Name | Author | Game Mode | Rating | |||||
---|---|---|---|---|---|---|---|---|
Arcane Weapons | PurpleJazz | Mutator | 10 |
#pragma name "Cosmic Duster"
#pragma require "CosmicDust.j2a"
#pragma require "lowind.wav"
void onLevelLoad() {
jjAnimSets[ANIM::CUSTOM[23]].load(0, "CosmicDust.j2a");
jjAnimations[jjAnimSets[ANIM::AMMO] + 28] = jjAnimations[jjAnimSets[ANIM::CUSTOM[23]] + 1];
jjAnimations[jjAnimSets[ANIM::AMMO] + 29] = jjAnimations[jjAnimSets[ANIM::CUSTOM[23]] + 2];
jjObjectPresets[OBJECT::ICEBULLET].behavior = jjObjectPresets[OBJECT::ICEBULLETPU].behavior = CosmicDust();
jjObjectPresets[OBJECT::ICEBULLET].counterEnd = jjObjectPresets[OBJECT::ICEBULLETPU].counterEnd = 180;
jjObjectPresets[OBJECT::ICEBULLET].special = jjObjectPresets[OBJECT::ICEBULLET].determineCurAnim(ANIM::CUSTOM[23], 1);
jjObjectPresets[OBJECT::ICEBULLETPU].special = jjObjectPresets[OBJECT::ICEBULLETPU].determineCurAnim(ANIM::CUSTOM[23], 0);
jjObjectPresets[OBJECT::ICEBULLET].lightType = jjObjectPresets[OBJECT::ICEBULLETPU].lightType = LIGHT::BRIGHT;
jjObjectPresets[OBJECT::ICEBULLET].light = 8;
jjObjectPresets[OBJECT::ICEBULLETPU].light = 12;
jjObjectPresets[OBJECT::ICEAMMO15].determineCurAnim(ANIM::CUSTOM[23], 3);
jjObjectPresets[OBJECT::ICEAMMO15].determineCurFrame();
jjObjectPresets[OBJECT::ICEPOWERUP].determineCurAnim(ANIM::CUSTOM[23], 4);
jjObjectPresets[OBJECT::ICEPOWERUP].determineCurFrame();
jjObjectPresets[OBJECT::DESTRUCTSCENERY].triggersTNT = false;
jjWeapons[WEAPON::ICE].multiplier = 16;
jjWeapons[WEAPON::ICE].style = WEAPON::POPCORN;
jjWeapons[WEAPON::ICE].spread = SPREAD::NORMAL;
jjWeapons[WEAPON::ICE].defaultSample = false;
jjSampleLoad(SOUND::COMMON_FLAMER, "lowind.wav");
}
class CosmicDust : jjBEHAVIORINTERFACE {
void onBehave(jjOBJ@ obj) {
obj.behave(obj.state == STATE::EXPLODE? BEHAVIOR::BULLET : BEHAVIOR::TNT, false);
jjPLAYER@ creator = jjPlayers[obj.creatorID];
obj.var[0] = obj.var[0] + (5 * obj.direction);
if (obj.state != STATE::EXPLODE) {
if (obj.counter > 1) {
jjDrawRotatedSprite(obj.xPos, obj.yPos, ANIM::CUSTOM[23], obj.eventID == OBJECT::ICEBULLETPU? 0:1, 0, -obj.var[0], 1, 1, SPRITE::ALPHAMAP, obj.eventID == OBJECT::ICEBULLETPU? 34:72);
jjDrawRotatedSprite(obj.xPos, obj.yPos, ANIM::CUSTOM[23], obj.eventID == OBJECT::ICEBULLETPU? 0:1, 0, -obj.var[0], 1, 1, SPRITE::ALPHAMAP, obj.eventID == OBJECT::ICEBULLETPU? 34:72);
}
obj.xPos = creator.xPos + (obj.eventID == OBJECT::ICEBULLETPU? 160:120)*jjSin((obj.counter + 1)*12) * (obj.direction != 0? obj.direction : 1);
obj.yPos = creator.yPos - (obj.eventID == OBJECT::ICEBULLETPU? 80:60)*jjCos((obj.counter + 1)*12);
} else {
obj.delete();
}
}
}
Jazz2Online © 1999-INFINITY (Site Credits). We have a Privacy Policy. Jazz Jackrabbit, Jazz Jackrabbit 2, Jazz Jackrabbit Advance and all related trademarks and media are ™ and © Epic Games. Lori Jackrabbit is © Dean Dodrill. J2O development powered by Loops of Fury and Chemical Beats.
Eat your lima beans, Johnny.