Implement SPLINK(2)
This commit is contained in:
@@ -1769,6 +1769,10 @@ class BuiltinFunction
|
||||
{
|
||||
p.sprite.splink(child, parent);
|
||||
}
|
||||
static int SPLINK(PetitComputer p, int id)
|
||||
{
|
||||
return p.sprite.splink(id);
|
||||
}
|
||||
static void SPUNLINK(PetitComputer p, int id)
|
||||
{
|
||||
if (!p.sprite.isSpriteDefined(id))
|
||||
|
||||
@@ -802,6 +802,14 @@ class Sprite
|
||||
}
|
||||
return id;
|
||||
}
|
||||
int unspid(int id)
|
||||
{
|
||||
if(petitcom.displaynum == 1)
|
||||
{
|
||||
return id - this.spmax;
|
||||
}
|
||||
return id;
|
||||
}
|
||||
void spset(int id, int defno)
|
||||
{
|
||||
id = spid(id);
|
||||
@@ -1056,6 +1064,19 @@ class Sprite
|
||||
zChange = true;
|
||||
}
|
||||
}
|
||||
int splink(int id)
|
||||
{
|
||||
if (!isSpriteDefined(id))
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
id = spid(id);
|
||||
if (!sprites[id].parent)
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
return unspid(sprites[id].parent.id);
|
||||
}
|
||||
//再帰的にUNLINKされるのか?
|
||||
void spunlink(int id)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user