diff options
author | chirs241097@gmail.com <chirs241097@gmail.com@c17bf020-1265-9734-9302-a83f62007ddb> | 2014-03-11 03:37:24 +0000 |
---|---|---|
committer | chirs241097@gmail.com <chirs241097@gmail.com@c17bf020-1265-9734-9302-a83f62007ddb> | 2014-03-11 03:37:24 +0000 |
commit | 285f4f3379a68db34eec86cdc5c8d6f3c5597f5e (patch) | |
tree | 477fd32c99b6132abf1754edfe6201c9c4af1976 /levels.h | |
parent | db6933143f3b9bb423faeaf823485672ec803000 (diff) | |
download | bullet-lab-remix-285f4f3379a68db34eec86cdc5c8d6f3c5597f5e.tar.xz |
Additive blending bullets, supernova level first draft.
Diffstat (limited to 'levels.h')
-rw-r--r-- | levels.h | 57 |
1 files changed, 56 insertions, 1 deletions
@@ -3154,14 +3154,16 @@ support hyper-threading?"); CreateTower8(400,300,857,3,57,20,false); for (int i=1;i<=towcnt;++i) if (tower[i].RendColor==0x80FFFFFF) + { + aca.achroma2pnt();acb.achroma2pnt(); tower[i].RendColor=0x00FFFFFF; + } for (int i=1;i<=towcnt;++i) if ((tower[i].RendColor>>24)<=0x80) tower[i].RendColor=tower[i].RendColor+0x01FFFFFF; else { IfCallLevel=false; - aca.achroma2pnt();acb.achroma2pnt(); playerpos=vector2d(200,150);PlayerSplit=true; return; } @@ -3186,3 +3188,56 @@ void Levelm1Part12() return; } } +vector2d snextarg; +int snexcnt,snexstep; +Target snexTarg; +void Levelm1Part13()//Additive blending +{ + frameleft=AMinute*2; + ++bgbrk;if (LOWFPS)bgbrk+=16; + if (bgbrk<30)return; + bgbrk=0; + if (!LOWFPS) + DBGColor=ColorTransfer(DBGColor,0xFF000000); + else + for (int i=1;i<=17;++i)DBGColor=ColorTransfer(DBGColor,0xFF000000); + if (DBGColor==0xFF000000) + { + frameleft=AMinute,++part; + bgdbbrk=re.NextInt(5,20),bgbrk=0; + avabrk=2.0f;avacurbrk=0;snexTarg.Init(0.001,vector2d(400,300)); + snexstep=0;snexcnt=10;snexTarg.TargShow(); + } +} +void Levelm1Part14() +{ + snexTarg.TargRender(); + avacurbrk+=hge->Timer_GetDelta(); + switch (snexstep) + { + case 0: + if(avacurbrk>avabrk)snexstep=1,snextarg=playerpos; + break; + case 1: + snexTarg.TargGoto(snextarg); + if(GetDist(snexTarg.targpos,snextarg)<0.01) + { + snexstep=2; + avabrk=0; + avacurbrk=0.05; + snexcnt=100-(frameleft/(double)(AMinute*2))*50; + } + break; + case 2: + if(avacurbrk>avabrk) + { + if(--snexcnt>0) + { + avabrk=0; + bullet[CreateBullet2(snexTarg.targpos.x,snexTarg.targpos.y,2,re.NextDouble(-pi,pi),true)].addblend=true; + } + else snexstep=0,avabrk=2,avacurbrk=0; + } + break; + } +} |