Okay, this problem has been driving me crazy. I keep getting this error: 敵ライフを適切に返していません。(d:/Users/Rawcode/Desktop/Home/Programs/DanmanfukuPh3/script/CTCStage6Remake/Scripts/test.txt)
I've translated the Japanese and it something vaguely like Cannot Return Fairy Life or something like that.
I have tried even commenting everything in lib_FairyF but I still get the error:
let fairyTex = "././Sprites/spr_Fairy01.png";
let red = 0;
function MakeFairy(life, x, y, colour)
{
let obj = ObjEnemy_Create(OBJ_ENEMY); // Make Fairy
ObjEnemy_Regist(obj); // Start Fairy
ObjEnemy_SetLife(obj, life); // Set Life
ObjEnemy_SetIntersectionCircleToShot(obj, 0, 0, 20); // Set Shot Collision
ObjEnemy_SetIntersectionCircleToPlayer(obj, 0, 0, 20); // Set Player Collision
//FairyLoop(obj, colour); // Start loop
ObjMove_SetPosition(obj,x,y); // Set Fairy Position
return obj;
}
task FairyLoop(fairy, colour)
{
let frame = 0;
let rate = 30;
ObjPrim_SetTexture(fairy,fairyTex); // Set Texture
ObjSprite2D_SetDestRect(fairy,0,0,32,32); // Set Center
ObjSprite2D_SetDestCenter(fairy); // Set Center
while(!Obj_IsDeleted(fairy)) // While Fairy is not Deleted.
{
frame++; // Increment Frame
if(frame < rate) // Frame 1
{
ObjSprite2D_SetSourceRect(fairy, 0, colour, 32, 32 + colour);
}
else if(frame > rate && frame < rate * 2) // Frame 2
{
ObjSprite2D_SetSourceRect(fairy, 32, colour, 64, 32 + colour);
}
else if(frame > rate && frame < rate * 2) // Frame 3
{
ObjSprite2D_SetSourceRect(fairy, 64, colour, 96, 32 + colour);
}
if(frame > rate * 4){frame = 0;} // Loop Frame if...
yield;
}
}
I also have a code snippet from the test.txt script:
#TouhouDanmakufu[Single]
#ScriptVersion[3]
#Title["testinging"]
#Text["testing"]
#include "./Library/lib_FairyF.dnh"
#include "./Library/lib_Misc.dnh"
#include "script/default_system/Default_ShotConst.txt"
// Default Functions
@Initialize // Called At Start
{
MakeFairy(0,GetCenterX,GetCenterY,0);
mainTask; // Call Main Task
}