#東方弾幕風[Player] #ScriptVersion[2] #Menu[じき] #Text[作ってみるテスト。いつ飽きるかがポイント] #Image[] #ReplayName[Ziki] script_player_main{ let csd = GetCurrentScriptDirectory; let Me = csd ~ ".\img\chara.png"; let Life = csd ~ ".\img\life.png"; let Cutin = csd ~ ".\img\tatie.png"; let a = 0; // cosの角度変数 let b = 0; //当たり判定のやつ @Initialize{ SetPlayerLifeImage(Me, 48, 6, 82, 60); LoadGraphic(Me); LoadGraphic(Life); SetSpeed(3.5, 1.3); LoadPlayerShotData(csd ~ ".\img\shot.txt"); SetItemCollectLine(144); Shot; } @MainLoop{ SetIntersectionCircle(GetPlayerX, GetPlayerY, 1); a += 2; yield; } @Missed{ } @SpellCard{ } @DrawLoop{ SetTexture(Me); if(GetKeyState(VK_LEFT)==KEY_PUSH || GetKeyState(VK_LEFT)==KEY_HOLD){ SetGraphicAngle(0, 0, -10); SetGraphicRect(6, 6, 40, 60); } else if(GetKeyState(VK_RIGHT)==KEY_PUSH || GetKeyState(VK_RIGHT)==KEY_HOLD){ SetGraphicAngle(0, 0, 10); SetGraphicRect(88, 6, 122, 60); }else{ SetGraphicAngle(0, 0, 0); SetGraphicRect(48, 6, 82, 60); } DrawGraphic(GetPlayerX, GetPlayerY); if(b == 1){ SetTexture(Life); SetGraphicRect(0, 0, 8, 8); DrawGraphic(GetPlayerX, GetPlayerY); } if(GetKeyState(VK_SLOWMOVE)==KEY_PUSH || GetKeyState(VK_SLOWMOVE)==KEY_HOLD){ b = 1; } else{b = 0;} } @Finalize{ DeleteGraphic(Me); DeleteGraphic(Life); } task Shot{ loop{ let v = 20; let angle = 260; let angle2 = 280; if((GetKeyState(VK_SLOWMOVE)==KEY_PUSH || GetKeyState(VK_SLOWMOVE)==KEY_HOLD) &&(GetKeyState(VK_SHOT)==KEY_PUSH || GetKeyState(VK_SHOT)==KEY_HOLD)){ loop(2){ CreatePlayerShot01(GetPlayerX + 10, GetPlayerY - 20, 20, 265, 1, 1, 1); CreatePlayerShot01(GetPlayerX + 10, GetPlayerY - 20, 20, 267.5, 1, 1, 1); CreatePlayerShot01(GetPlayerX - 10, GetPlayerY - 20, 20, 272.5, 1, 1, 1); CreatePlayerShot01(GetPlayerX - 10, GetPlayerY - 20, 20, 275, 1, 1, 1); } CreatePlayerShot01(GetPlayerX, GetPlayerY + 40, 20, 270 - (cos(a*3) * 7), 1.5, 1, 2); CreatePlayerShot01(GetPlayerX, GetPlayerY + 40, 20, 270 + (cos(a*3) * 7), 1.5, 1, 2); } else if((GetKeyState(VK_SLOWMOVE)==KEY_PULL || GetKeyState(VK_SLOWMOVE)==KEY_FREE) &&(GetKeyState(VK_SHOT)==KEY_PUSH || GetKeyState(VK_SHOT)==KEY_HOLD)){ loop(7){ CreatePlayerShot01(GetPlayerX - 20, GetPlayerY, v, angle, 0.8, 1, 1); angle += 10; } loop(7){ CreatePlayerShot01(GetPlayerX + 20, GetPlayerY, v, angle2, 0.8, 1, 1); angle2 -= 10; } CreatePlayerShot01(GetPlayerX + 20, GetPlayerY, v, 270, 0.8, 1, 1); CreatePlayerShot01(GetPlayerX - 20, GetPlayerY, v, 270, 0.8, 1, 1); CreatePlayerShot01(GetPlayerX, GetPlayerY, 10, 270 + (cos(a) * 35), 1.5, 1, 3); CreatePlayerShot01(GetPlayerX, GetPlayerY, 10, 270 - (cos(a) * 35), 1.5, 1, 3); } wait(3); } } function wait(w) { loop(w) { yield; } } }