Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- task CreateNeedle(x, y) {
- let shotObj = CreateShotC2(x, y, 0, 0, 0, 0, ARROWHEAD_GREEN, 0);
- let reflect = false;
- ObjMove_AddPatternB2(shotObj, 0, rand(1.50,-1.50), 2 , 0, -0.050, 2, -3);
- while(!Obj_IsDeleted(shotObj)) {
- if(ObjMove_GetY(shotObj) < 0 && reflect == false) {
- PlaySoundA1("shot", 90, 0);
- NeedleLaser(GetObjX(shotObj), GetObjY(shotObj), GetPlayerAngle(shotObj));
- reflect = true;
- Obj_Delete(shotObj);
- }
- yield;
- }
- task NeedleLaser(x, y, ang) {
- let mainObj = LLaserC1(x, y, 6, ang, 300, 6, SMALL_RED);
- let count = 0;
- let angle = 0;
- let reflect2 = false;
- loop(2){
- let id = CLaserC1(ObjMove_GetX(mainObj), ObjMove_GetY(mainObj),0,angle,120,6,SMALL_WHITE);
- Spiraling(id, angle);
- angle += 180/2;
- }
- while(!Obj_IsDeleted(mainObj)){
- if(ObjMove_GetY(mainObj) > STGFRAME_HEIGHT+50 && reflect2==false) {
- PlaySoundA1("reversea",90,0);
- reflect2=true;
- Obj_Delete(mainObj);
- }
- yield;
- }
- task Spiraling(id, angle) {
- let r = 0;
- let r2 = 60;
- let timer = 0;
- while(!Obj_IsDeleted(mainObj)) {
- timer++;
- r2-=0.50;
- if(timer%3==0){
- SuddenAppearBullet(ObjMove_GetX(id), ObjMove_GetY(id));
- }
- let sX = GetEllipticX(ObjMove_GetX(mainObj), r, r2, angle, ang);
- let sY = GetEllipticY(ObjMove_GetY(mainObj), r, r2, angle, ang);
- let trueAngle = angle + ang;
- ObjMove_SetPosition(id, sX, sY);
- ObjMove_SetAngle(id, trueAngle);
- angle += 8;
- yield;
- }
- Obj_Delete(id);
- task SuddenAppearBullet(x,y){
- let hidden = CreateShotC1(x,y, 0, 0, BL_SMALL_GREEN, 0);
- Obj_SetVisible(hidden,false);
- while(!Obj_IsDeleted(mainObj)){yield;}
- let tanglelaser = CreateShotC1(ObjMove_GetX(hidden), ObjMove_GetY(hidden), 0, 0, BL_SMALL_GREEN, 10);
- /*
- let fakethread = CLaserC1(ObjMove_GetX(tanglelaser), ObjMove_GetY(tanglelaser),0,angle+90,80,2,SMALL_WHITE);
- ObjMove_AddPatternA2(fakethread,0,8,NO_CHANGE,8,rand(-0.90,0.90),8);
- */
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment