diff options
author | Treeki <treeki@gmail.com> | 2011-11-01 22:59:27 +0100 |
---|---|---|
committer | Treeki <treeki@gmail.com> | 2011-11-01 22:59:27 +0100 |
commit | c274d2173da36069855b191b93c831c1ad9bcb2b (patch) | |
tree | 538e27ae34d8cad6b269bc7066bfdbca3687b943 /src/fakeStarCoin.cpp | |
parent | a5b283748c34215fb0954b8caa5f27ea00541cad (diff) | |
parent | 804bc013c1a3ec3afeedb19a1351ee4c3206c901 (diff) | |
download | kamek-c274d2173da36069855b191b93c831c1ad9bcb2b.tar.gz kamek-c274d2173da36069855b191b93c831c1ad9bcb2b.zip |
Merge branch 'level-select' of tsn:Kamek into level-select
Diffstat (limited to 'src/fakeStarCoin.cpp')
-rw-r--r-- | src/fakeStarCoin.cpp | 52 |
1 files changed, 51 insertions, 1 deletions
diff --git a/src/fakeStarCoin.cpp b/src/fakeStarCoin.cpp index fb0df72..a845e45 100644 --- a/src/fakeStarCoin.cpp +++ b/src/fakeStarCoin.cpp @@ -30,6 +30,12 @@ class daFakeStarCoin : public dEn_c { void updateModelMatrices(); void playerCollision(ActivePhysics *apThis, ActivePhysics *apOther); + void collisionCat1_Fireball_E_Explosion(ActivePhysics *apThis, ActivePhysics *apOther); + bool collisionCat2_IceBall_15_YoshiIce(ActivePhysics *apThis, ActivePhysics *apOther); + void collisionCat9_RollingObject(ActivePhysics *apThis, ActivePhysics *apOther); + void collisionCat13_Hammer(ActivePhysics *apThis, ActivePhysics *apOther); + void collisionCat14_YoshiFire(ActivePhysics *apThis, ActivePhysics *apOther); + }; @@ -41,6 +47,50 @@ void daFakeStarCoin::playerCollision(ActivePhysics *apThis, ActivePhysics *apOth this->Delete(); } +void daFakeStarCoin::collisionCat1_Fireball_E_Explosion(ActivePhysics *apThis, ActivePhysics *apOther) { + CreateEffect(&this->pos, &(S16Vec){0,0,0}, &(Vec){1.0, 1.0, 1.0}, 336); + CreateEffect(&this->pos, &(S16Vec){0,0,0}, &(Vec){3.0, 3.0, 3.0}, 342); + + PlaySound(this, SE_EMY_FIRE_SNAKE_BIGGER); + + this->Delete(); +} +bool daFakeStarCoin::collisionCat2_IceBall_15_YoshiIce(ActivePhysics *apThis, ActivePhysics *apOther) { + CreateEffect(&this->pos, &(S16Vec){0,0,0}, &(Vec){1.5, 1.5, 1.5}, 44); + CreateEffect(&this->pos, &(S16Vec){0,0,0}, &(Vec){1.0, 1.0, 1.0}, 231); + CreateEffect(&this->pos, &(S16Vec){0,0,0}, &(Vec){1.5, 1.5, 1.5}, 235); + + PlaySound(this, SE_OBJ_PNGN_ICE_BREAK); + + this->Delete(); + return false; +} +void daFakeStarCoin::collisionCat9_RollingObject(ActivePhysics *apThis, ActivePhysics *apOther) { + CreateEffect(&this->pos, &(S16Vec){0,0,0}, &(Vec){1.0, 1.0, 1.0}, 48); + CreateEffect(&this->pos, &(S16Vec){0,0,0}, &(Vec){1.0, 1.0, 1.0}, 378); + + PlaySound(this, SE_BOSS_JR_FLOOR_BREAK); + + this->Delete(); +} +void daFakeStarCoin::collisionCat13_Hammer(ActivePhysics *apThis, ActivePhysics *apOther) { + CreateEffect(&this->pos, &(S16Vec){0,0,0}, &(Vec){1.0, 1.0, 1.0}, 48); + CreateEffect(&this->pos, &(S16Vec){0,0,0}, &(Vec){1.0, 1.0, 1.0}, 378); + + PlaySound(this, SE_BOSS_JR_FLOOR_BREAK); + + this->Delete(); +} +void daFakeStarCoin::collisionCat14_YoshiFire(ActivePhysics *apThis, ActivePhysics *apOther) { + CreateEffect(&this->pos, &(S16Vec){0,0,0}, &(Vec){1.0, 1.0, 1.0}, 336); + CreateEffect(&this->pos, &(S16Vec){0,0,0}, &(Vec){3.0, 3.0, 3.0}, 342); + + PlaySound(this, SE_EMY_FIRE_SNAKE_BIGGER); + + this->Delete(); +} + + daFakeStarCoin *daFakeStarCoin::build() { @@ -67,7 +117,7 @@ int daFakeStarCoin::onCreate() { HitMeBaby.category1 = 0x5; HitMeBaby.category2 = 0x0; HitMeBaby.bitfield1 = 0x4F; - HitMeBaby.bitfield2 = 0x200; + HitMeBaby.bitfield2 = 0xFFFFFFFF; HitMeBaby.unkShort1C = 0; HitMeBaby.callback = &dEn_c::collisionCallback; |