Name | Author | Game Mode | Rating | |||||
---|---|---|---|---|---|---|---|---|
Stone Abyss | Bloody_Body | Single player | 9.6 |
int x,y,i,u,w=0,b=0;
jjPAL Boss;
bool final=false;
void onLevelLoad() {
jjObjectPresets[OBJECT::BOLLY].scriptedCollisions = true;
//jjTexturedBGTexture = TEXTURE::WISETYNESS;
for (int weaponID = WEAPON::BLASTER; weaponID <= WEAPON::GUN9; ++weaponID) {
jjWEAPON@ weaponProfile = jjWeapons[weaponID];
weaponProfile.comesFromBirds = weaponProfile.comesFromBirdsPowerup = true;
}
//jjObjectPresets[OBJECT::HELMUT].behavior = RicHELMUT();
}
const string MUSICFILENAME = "medivo2.j2b";
void onLevelReload() {
b=0;
final=false;
jjMusicLoad(MUSICFILENAME);
jjPalette.reset();
}
void onMain(){
updateGems();
//jjAlert("b "+ formatInt(b, "1"));
if (b<=99 && final && (jjGameTicks & 20) == 0) {
b++;
jjPalette.reset();
jjPalette.copyFrom(
1,
254,
1,
Boss,
b/100.0
);
jjPalette.apply();
}
else if (b==99) {
Boss.apply();
//if (jjGameTicks%5==0){
// jjPalette.fill(255,255,255, jjSin((jjGameTicks)*16) * .333 + .5);}
}
}
/*
void onDrawLayer2(jjPLAYER@ player,jjCANVAS@ layer) {
//for (int x = 0; x < 1000; ++x)
{
// for (int y = 0; y < 1000; ++y){
layer.drawTile(1*32, 1*32, 35);
//layer.drawTile(1*32, x*32, 34 + TILE::ANIMATED);
//}
}
}
*/
void updateGems()
{
for(int i=1;i<jjObjectCount;i++)
{
if(jjObjects[i].isActive)
{
if(jjObjects[i].eventID==OBJECT::SUPERGEM)
{
jjObjects[i].var[0]=jjParameterGet(jjObjects[i].xOrg/32,jjObjects[i].yOrg/32,0,2)+1;
}
if(jjObjects[i].eventID==OBJECT::FLICKERGEM)
{
if(jjEventGet(jjObjects[i].xOrg/32,jjObjects[i].yOrg/32)==OBJECT::SUPERGEM)
{
jjObjects[i].var[0]=jjParameterGet(jjObjects[i].xOrg/32,jjObjects[i].yOrg/32,0,2)+1;
}
else if(jjEventGet(jjObjects[i].xOrg/32,jjObjects[i].yOrg/32+1)==OBJECT::GEMSTOMP)
{
jjObjects[i].var[0]=jjParameterGet(jjObjects[i].xOrg/32,jjObjects[i].yOrg/32+1,0,2)+1;
}
if(jjObjects[i].var[0]==2||jjObjects[i].var[0]==3)
{
jjObjects[i].points=500*(jjObjects[i].var[0]-1);
}
}
}
}
}
void onFunction3(jjPLAYER@ play) {
Boss.load("ImprovedMedivoEvil3.j2t");
final=true;
jjLocalPlayers[u].lighting = 70;
}
void onFunction8(jjPLAYER@ play) {
jjTriggers[8]=true;
}
void onFunction9(jjPLAYER@ play) {
jjTriggers[9]=true;
}
void onFunction11(jjPLAYER@ play) {
jjTriggers[20]=true;
}
void onObjectHit(jjOBJ@ obj, jjOBJ@ bullet, jjPLAYER@ p, int force) {
if (obj.eventID == OBJECT::BOLLY)
{
if (bullet is null)
{obj.energy-=0;
if (w==0)
{p.showText("@@Stomping on Bolly's top@is useless! HAHAHA!");
w++;}
}
else if (force > 0)
{ obj.energy -=1;
obj.justHit = 5;
bullet.delete();}
if (obj.energy <= 0) {
if (bullet !is null) {
if ((bullet.var[6] & 2) == 2) { //toaster and its ilk
obj.particlePixelExplosion(1); //burny explosion
jjSample(obj.xPos, obj.yPos, SOUND::COMMON_BURN);
} else {
obj.particlePixelExplosion(0);
}
obj.state = STATE::KILL;
p.score += obj.points;
jjEventSet(p.xPos / 32, p.yPos / 32, AREA::EOL);
}
if (bullet is null)
{obj.particlePixelExplosion(0);
obj.state = STATE::KILL;
p.score += obj.points;
jjEventSet(p.xPos / 32, p.yPos / 32, AREA::EOL);
}
}
//let the object's behavior function take care of deleting it
}
}
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.