Downloads containing VDom1.j2as

Downloads
Name Author Game Mode Rating
JJ2+ Only: violetclm DOM Episodes I...Featured Download Violet CLM Custom / Concept 9 Download file

File preview

  1. const bool MLLESetupSuccessful = MLLE::Setup(array<MLLEWeaponApply@> = {null, null, WeaponVMega::IceCloud::Weapon(), null, se::FireworkMLLEWrapper(), null, null, null, WeaponVMega::Meteor::Weapon()}); ///@MLLE-Generated
  2. #include "MLLE-Include-1.5w.asc" ///@MLLE-Generated
  3. #pragma require "vdom.j2t" ///@MLLE-Generated
  4. #pragma require "VDom1.j2l" ///@MLLE-Generated
  5. #include "WeaponVMega9.asc" ///@MLLE-Generated
  6. #pragma require "WeaponVMega9.asc" ///@MLLE-Generated
  7. #include "SEfirework-mlle.asc" ///@MLLE-Generated
  8. #pragma require "SEfirework-mlle.asc" ///@MLLE-Generated
  9. #include "WeaponVMega3.asc" ///@MLLE-Generated
  10. #pragma require "WeaponVMega3.asc" ///@MLLE-Generated
  11. ///@saveandrunargs -dom -server
  12.  
  13. void onLevelLoad() {
  14.         jjObjectPresets[OBJECT::REDSPRING].ySpeed -= 2;
  15.         jjANIMATION@ redSpring = jjAnimations[jjObjectPresets[OBJECT::REDSPRING].curAnim];
  16.         for (uint i = 0; i < redSpring.frameCount; ++i) {
  17.                 jjANIMFRAME@ frame = jjAnimFrames[redSpring + i];
  18.                 jjPIXELMAP image(frame);
  19.                 for (uint x = 0; x < image.width; ++x)
  20.                         for (uint y = 0; y < image.height; ++y)
  21.                                 if (image[x,y] & ~7 == 24)
  22.                                         image[x,y] = 96 + (image[x,y] & 7) * 2;
  23.                 image.save(frame);
  24.         }
  25.         jjObjectPresets[OBJECT::REDSPRING].isFreezable = false; //ice cloud is just TOO powerful otherwise
  26.        
  27.         //jjAnimFrames[jjObjectPresets[OBJECT::CARROT].curFrame].transparent = true; //less garish, but less needed when the palette is oranger
  28. }
  29. bool onDrawAmmo(jjPLAYER@ player, jjCANVAS@ canvas) {
  30.         return MLLE::WeaponHook.drawAmmo(player, canvas);
  31. }
  32.  
  33. void onLevelBegin() {
  34.         for (int weaponID = WEAPON::BLASTER; weaponID <= WEAPON::GUN9; ++weaponID) {
  35.                 jjWeapons[weaponID].allowedPowerup =
  36.                         jjWeapons[weaponID].allowed;
  37.                 jjOBJ@ preset = jjObjectPresets[se::getAmmoPickupOfWeapon(weaponID)];
  38.                 jjBEHAVIORINTERFACE@ bi = cast<jjBEHAVIORINTERFACE@>(preset.behavior);
  39.                 if (bi !is null) {
  40.                         se::AmmoPickup@ ap = cast<se::AmmoPickup@>(bi);
  41.                         if (ap !is null)
  42.                                 ap.setCount(9001);
  43.                 }
  44.         }
  45.         jjLocalPlayers[0].showText("@@@@Pick the same weapon twice@@to get its powerup!", STRING::MEDIUM);
  46. }
  47.  
  48. void onFunction0(jjPLAYER@ player, uint8 weaponID) {
  49.         if (player.ammo[weaponID] != 0 && !player.powerup[weaponID]) {
  50.                 player.powerup[weaponID] = true;
  51.                 jjSamplePriority(SOUND::COMMON_GLASS2);
  52.                 if (jjAutoWeaponChange)
  53.                         player.currWeapon = weaponID;
  54.         }
  55.         player.alreadyDoubleJumped = true;
  56. }
  57. void onFunction1(jjPLAYER@ player) { player.ySpeed = abs(player.ySpeed); }
  58. void onLevelReload() { MLLE::Palette.apply(); } //why are you playing this in SP, oh well
  59.  
  60. void onMain() {
  61.         const auto speed = jjGameTicks * 3 / 2;
  62.         jjLayerXOffset[6] = jjSin(speed) * 9;
  63.         jjLayerYOffset[6] = jjCos(speed) * 16;
  64. }