summaryrefslogtreecommitdiff
path: root/effects.h
diff options
context:
space:
mode:
authorGravatar chirs241097@gmail.com <chirs241097@gmail.com@c17bf020-1265-9734-9302-a83f62007ddb> 2014-02-14 15:02:51 +0000
committerGravatar chirs241097@gmail.com <chirs241097@gmail.com@c17bf020-1265-9734-9302-a83f62007ddb> 2014-02-14 15:02:51 +0000
commitc80fe050d6d175c5971a7b77e04a66a5ee161394 (patch)
treee14968a9608e1b22f5ff8f03bfe6778438b3fe07 /effects.h
parent5422ce494b3a83ece8f12156e7498cc9ce313539 (diff)
downloadbullet-lab-remix-c80fe050d6d175c5971a7b77e04a66a5ee161394.tar.xz
M trunk/CHANGELOG.TXT
M trunk/VERSION.TXT M trunk/effects.h M trunk/global.h M trunk/main.cpp M trunk/towernbullet.h
Diffstat (limited to 'effects.h')
-rw-r--r--effects.h49
1 files changed, 42 insertions, 7 deletions
diff --git a/effects.h b/effects.h
index 0443754..d37eb90 100644
--- a/effects.h
+++ b/effects.h
@@ -32,11 +32,11 @@ void SCEffect_Attatch()
bullet[i].sccolor=0x80FFFFFF;
}
}
-void SCEffect_Process()
+void SCEffect_Process(int i)
{
- for (int i=1;i<=bulcnt;++i)
- {
- if (!bullet[i].exist||bullet[i].bullettype!=254)continue;//If this bullet doesn't exist or is not of this type, do not render it.
+ //for (int i=1;i<=bulcnt;++i)
+ //{
+ if (!bullet[i].exist||bullet[i].bullettype!=254)return;//If this bullet doesn't exist or is not of this type, do not render it.
if (!DisablePlayer)
{
if (LOWFPS)
@@ -60,7 +60,6 @@ void SCEffect_Process()
}
double dis=GetDist(bullet[i].bulletpos,playerpos);//Get distance between player and bullet
if (GETA(bullet[i].sccolor)<=0x0A||bullet[i].bulletpos.x<=-10||bullet[i].bulletpos.x>=800||bullet[i].bulletpos.y<=-10||bullet[i].bulletpos.y>=600)
- //If collision is detected or the bullet flys out of screen, delete it.
{
bullet[i].exist=false;
bullet[i].bulletpos.x=bullet[i].bulletpos.y=0;
@@ -77,8 +76,7 @@ void SCEffect_Process()
bulletspr[grey]->SetColor(bullet[i].sccolor);
bulletspr[grey]->RenderEx(bullet[i].bulletpos.x+2.4,bullet[i].bulletpos.y+2.4,0,0.2,0);
}
- }
-
+ //}
}
void BulletEffect_Attatch(int n)
{
@@ -95,3 +93,40 @@ void BulletEffect_Process(int n)
if (bullet[n].effbrk<=0)
bullet[n].scale-=0.04,bullet[n].effbrk=17;
}
+int BulletEffect_Death(Bullet a,DWORD color)
+{
+ int i;
+ if (bulcnt==0)
+ bulcnt=i=1;
+ else
+ {
+ for (i=1;i<=bulcnt;++i)
+ if (!bullet[i].exist)break;
+ if (i>bulcnt)bulcnt=i;
+ }
+ bullet[i].exist=true;
+ bullet[i].bullettype=253;
+ bullet[i].bulletpos.x=a.bulletpos.x;
+ bullet[i].bulletpos.y=a.bulletpos.y;
+ bullet[i].bulletdir.x=bullet[i].bulletdir.y=bullet[i].dist=0;
+ bullet[i].bulletspeed=0;
+ bullet[i].alterColor=circle;
+ bullet[i].scollable=false;
+ bullet[i].scale=1;
+ bullet[i].sccolor=SETA(color,0x80);
+ bullet[i].effbrk=7;
+ return i;
+}
+void BulletDeath_Process(int i)
+{
+ if (!bullet[i].exist)return;
+ if (LOWFPS)
+ bullet[i].effbrk-=17;
+ else
+ --bullet[i].effbrk;
+ if (GETA(bullet[i].sccolor)<=10)return (void)(bullet[i].exist=false);
+ if (bullet[i].effbrk<=0)
+ bullet[i].effbrk=7,bullet[i].scale+=0.05,bullet[i].sccolor=SETA(bullet[i].sccolor,GETA(bullet[i].sccolor)-3);
+ bulletspr[circle]->SetColor(bullet[i].sccolor);
+ bulletspr[circle]->RenderEx(bullet[i].bulletpos.x+7.2,bullet[i].bulletpos.y+7.2,0,0.6*bullet[i].scale);
+}