danmakufu crashes when i run this. no error message, no warning. what the hell is doing it? i got no idea!
#TouhouDanmakufu[Stage]
#Title[RoND Stage 1 CIRNO!]
#Text[Idiot vs Idiot - Made by CAsercan3]
#Player[player\Rumia2\Rumia.txt]
#ScriptVersion[2]
script_stage_main
{
let normpoint = 150;
let alpha_effect = 0;
let bpicker = 1;
let rotation2 = 255;
SetCommonData("HelloBoss",1);
SetCommonData("MakeSprite",0);
let rotation = 0;
let redfog = 255;
let bluefog = 255;
let greenfog = 255;
let imagefile = GetCurrentScriptDirectory ~ "sky-33.jpg";
let imagefile2 = GetCurrentScriptDirectory ~ "sea.jpg";
let imagefile3 = GetCurrentScriptDirectory ~ "stg4bg.png";
LoadGraphic(imagefile3);
let counter = 0;
let counter2 = 0;
let alpha = 0;
let counter3 = 0;
let frame = 0;
let frame2 = -120;
let p = 0;
function Wait( w ){ loop( w ){ yield }; }
function WaitForZeroEnemy(){
while(GetEnemyNum() != 0){yield;}
}
function WaitForOneEnemy(){
while(GetEnemyNum() > 1){yield;}
}
task StageTask{
loop(3){
loop(6){
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe07.txt",rand(GetCenterX -100,GetClipMaxX),GetClipMinY ,0,0,-1);
Wait(10);
}
Wait(60);
loop(6){
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe07.txt",rand(GetClipMinX,GetCenterX +100),GetClipMinY ,0,0,1);
Wait(10);
}
}
loop(2){
p+=20;
loop(10){
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe01.txt",GetClipMinX -50,75 +p,0,0,1);
Wait(7);
}
p+=20;
loop(10){
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe01.txt",GetClipMaxX,75 +p,0,0,-1);
Wait(7);
}
}
loop(7){
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe06.txt",rand(GetCenterX,GetClipMaxX),GetClipMinY ,0,0,-1);
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe06.txt",rand(GetClipMinX,GetCenterX),GetClipMinY ,0,0,1);
Wait(75);
}
loop(3){
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe02.txt",GetClipMaxX,75 ,0,0,-1);
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe02.txt",GetClipMinX,75 ,0,0,1);
Wait(7);
}
loop(6){
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe03.txt",GetClipMaxX - rand(1,100),75 ,0,0,-1);
Wait(20);
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe03.txt",GetClipMinX + rand(1,100),75 ,0,0,1);
Wait(20);
}
p=10;
loop(3){
p+=20;
loop(10){
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe01.txt",GetClipMinX -50,75 +p,0,0,1);
Wait(7);
}
p+=20;
loop(10){
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe01.txt",GetClipMaxX,75 +p,0,0,-1);
Wait(7);
}
}
//midboss
//end midboss
Wait(60);
loop(20){
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe04.txt",rand(GetClipMinX,GetClipMaxX),GetClipMaxY ,0,0,-1);
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe04.txt",rand(GetClipMinX,GetClipMaxX),GetClipMaxY ,0,0,-1);
Wait(40);
}
Wait(50);
loop(2){
p+=20;
loop(10){
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe01.txt",GetClipMinX -50,75 +p,0,0,1);
Wait(7);
}
p+=20;
loop(10){
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe01.txt",GetClipMaxX,75 +p,0,0,-1);
Wait(7);
}
}
}
ClearStage;
//magical red knives
loop(3){
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe09.txt",GetClipMinX +100,GetClipMinY ,0,0,-1);
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe09.txt",GetClipMaxX -100,GetClipMinY ,0,0,1);
Wait(110);
}
//magical blue knives
loop(3){
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe08.txt",GetClipMinX +100,GetClipMinY ,0,0,-1);
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe08.txt",GetClipMaxX -100,GetClipMinY ,0,0,1);
Wait(30);
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe08.txt",GetClipMinX +120,GetClipMinY ,0,0,-1);
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe08.txt",GetClipMaxX -120,GetClipMinY ,0,0,1);
Wait(30);
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe08.txt",GetClipMinX +140,GetClipMinY ,0,0,-1);
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe08.txt",GetClipMaxX -140,GetClipMinY ,0,0,1);
Wait(120);
}
//suicidal kunai spam fairies
loop(3){
loop(6){
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe07.txt",rand(GetCenterX -100,GetClipMaxX),GetClipMinY ,0,0,-1);
Wait(10);
}
Wait(60);
loop(6){
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe07.txt",rand(GetClipMinX,GetCenterX +100),GetClipMinY ,0,0,1);
Wait(10);
}
}
//wall shooters
loop(10){
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe06.txt",rand(GetCenterX,GetClipMaxX),GetClipMinY ,0,0,-1);
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe06.txt",rand(GetClipMinX,GetCenterX),GetClipMinY ,0,0,1);
Wait(80);
}
//rocket orbs
Wait(120);
loop(20){
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe05.txt",rand(GetClipMinX,GetClipMaxX),GetClipMinY ,0,0,-1);
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe05.txt",rand(GetClipMinX,GetClipMaxX),GetClipMaxY ,0,0,-1);
Wait(60);
}
//rocket fairies
loop(20){
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe04.txt",rand(GetClipMinX,GetClipMaxX),GetClipMaxY ,0,0,-1);
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe04.txt",rand(GetClipMinX,GetClipMaxX),GetClipMaxY ,0,0,-1);
Wait(40);
}
//ringmen
loop(3){
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe03.txt",GetClipMaxX - rand(1,100),75 ,0,0,-1);
Wait(20);
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe03.txt",GetClipMinX + rand(1,100),75 ,0,0,1);
Wait(20);
}
//fork shots
loop(3){
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe02.txt",GetClipMaxX,75 ,0,0,-1);
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe02.txt",GetClipMinX,75 ,0,0,1);
Wait(7);
}
//8way shots
loop(3){
p+=20;
loop(10){
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe01.txt",GetClipMinX -50,75 +p,0,0,1);
Wait(7);
}
p+=20;
loop(10){
CreateEnemyFromFile(GetCurrentScriptDirectory ~ "foe01.txt",GetClipMaxX,75 +p,0,0,-1);
Wait(7);
}
}
WaitForZeroEnemy;
Wait(60);
SetCommonData("HelloBoss",-5);
Wait(255);
SetCommonData("HelloBoss",-4);
Wait(255);
SetCommonData("HelloBoss",-3);
Wait(255);
SetCommonData("HelloBoss",0);
Wait(1000);
SetCommonData("HelloBoss",4);
Wait(255);
ClearStage;
}
@Initialize
{
LoadGraphic(imagefile2);
LoadGraphic(imagefile);
SetAllowedContinueCount(4);
SetNormPoint(150);
}
@MainLoop
{
yield;
frame++;
frame2+=GetCommonData("HelloBoss");
if(frame2 == 1){
StageTask;
}
if(GetPoint >= 150 && normpoint == 150){
SetNormPoint(400);
normpoint = 400;
ExtendPlayer(1);
}
if(GetPoint >= 400 && normpoint == 400){
SetNormPoint(900);
normpoint = 900;
ExtendPlayer(1);
}
if(GetPoint >= 900 && normpoint ==900){
SetNormPoint(9999);
normpoint = 9999;
ExtendPlayer(1);
}
rotation++;
rotation2++;
if(GetCommonData("HelloBoss") == 3){
redfog++;
}
if(GetCommonData("HelloBoss") == -3){
redfog--;
}
if(GetCommonData("HelloBoss") == 4){
greenfog++;
}
if(GetCommonData("HelloBoss") == -4){
greenfog--;
}
if(GetCommonData("HelloBoss") == 5){
bluefog++;
}
if(GetCommonData("HelloBoss") == -5){
bluefog--;
}
}
@BackGround
{
if(rotation > 255 *2){
rotation = 0;
}
if(rotation2 > 255 *4){
rotation2 = 0;
}
SetFog(500 , 2500 , redfog, greenfog, bluefog);
WriteZBuffer(true);
UseZBuffer(true);
SetRenderState(ALPHA);
SetViewTo(250 , 0 , 0 );
SetViewFrom( 1500 , 0, 15 );
SetPerspectiveClip(10,2000);
SetGraphicAngle(90, 90, 0);
SetGraphicRect(1 , 1- rotation, 255 *6 , 255 * 6- rotation);
SetTexture(imagefile2);
// SetColor(200,200,200);
SetGraphicScale(2,2);
DrawGraphic3D( -150, -5 , -50);
SetTexture(imagefile);
SetGraphicRect(1 , 1, 255 *6 , 255 * 6);
SetGraphicAngle(0, 90, 180);
SetAlpha(255);
DrawGraphic3D( -250, sin(frame2 /2) *7, sin(frame2 /2) *7);
SetTexture(imagefile3);
SetGraphicRect(258,1,490,254);
DrawGraphic3D( rotation *5 -1000, 900 - rotation, -100 );
DrawGraphic3D( rotation *6 -1000, 1000 - rotation, 100 );
DrawGraphic3D( rotation2 *5 -1000, 1100 - rotation2 *1.2, -120 );
DrawGraphic3D( rotation2 *6 -1000, 1000 - rotation2, 80 );
}
@Finalize
{
DeleteGraphic(imagefile);
}
}