diff --git a/addons/humor/README.md b/addons/humor/README.md new file mode 100644 index 0000000..01cb396 --- /dev/null +++ b/addons/humor/README.md @@ -0,0 +1,5 @@ +This addon exists for those things that provoke the question "Why?", +with the only answer being "Because we can!". + +* christmas_smoke - https://www.youtube.com/watch?v=_8ARYKuU9Yg +* yeetgun - https://www.youtube.com/watch?v=pmRpESHsoZQ diff --git a/addons/humor/christmas_smoke/config.cpp b/addons/humor/christmas_smoke/config.cpp new file mode 100644 index 0000000..d6a54ae --- /dev/null +++ b/addons/humor/christmas_smoke/config.cpp @@ -0,0 +1,102 @@ +class CfgPatches { + class cnto_humor_christmas_smoke { + units[] = {}; + weapons[] = {}; + magazines[] = { "cnto_humor_SmokeShellChristmas_mag" }; + requiredAddons[] = { + "A3_Data_F_ParticleEffects", + "A3_Weapons_F" + }; + }; +}; + +class CfgCloudlets { + class SmokeShellWhite; + class cnto_humor_SmokeShellChristmasWhite : SmokeShellWhite { + sizeCoef = 0.15; + lifeTime = 60; + sizeVar = 0.05; + /* stop the animation early, like SmokeShellWhite2 */ + particleFSNtieth = 16; + particleFSIndex = 12; + particleFSFrameCount = 4; + particleFSLoop = 0; + /* white more frequent than red/green */ + interval = 0.05; + color[] = { + {1,1,1,1} + }; + /* defaults, but overwritten by mods, so re-set them here */ + moveVelocity[] = {0.2,0.1,0.1}; + MoveVelocityVar[] = {0.25,0.25,0.25}; + }; + class cnto_humor_SmokeShellChristmasRed : cnto_humor_SmokeShellChristmasWhite { + interval = 0.2; + color[] = { + {1,0.1,0.1,1} + }; + }; + class cnto_humor_SmokeShellChristmasGreen : cnto_humor_SmokeShellChristmasWhite { + interval = 0.2; + color[] = { + {0.1,1,0.1,1} + }; + }; +}; + +class cnto_humor_SmokeShellChristmasEffect { + class White { + simulation = "particles"; + type = "cnto_humor_SmokeShellChristmasWhite"; + position[] = {0,0,0}; + intensity = 1; + interval = 1; + }; + class Red { + simulation = "particles"; + type = "cnto_humor_SmokeShellChristmasRed"; + position[] = {0,0,0}; + intensity = 1; + interval = 1; + }; + class Green { + simulation = "particles"; + type = "cnto_humor_SmokeShellChristmasGreen"; + position[] = {0,0,0}; + intensity = 1; + interval = 1; + }; +}; + +class CfgAmmo { + class SmokeShell; + class cnto_humor_SmokeShellChristmas_ammo : SmokeShell { + effectsSmoke = "cnto_humor_SmokeShellChristmasEffect"; + timeToLive = 120; + // filename, volume, pitch, distance ?? + SmokeShellSoundLoop1[] = {"\cnto\additions\humor\christmas_smoke\jingle",1.5,1,30}; + SmokeShellSoundLoop2[] = {}; + }; +}; + +class CfgMagazines { + class SmokeShell; + class cnto_humor_SmokeShellChristmas_mag : SmokeShell { + ammo = "cnto_humor_SmokeShellChristmas_ammo"; + descriptionShort = "Type: Smoke Grenade - Christmas
Rounds: 1
Used in: Hand or Rectum"; + displayName = "Smoke Grenade (Christmas)"; + displayNameShort = "Christmas Smoke"; + }; +}; + +class CfgWeapons { + class GrenadeLauncher; + class Throw : GrenadeLauncher { + muzzles[] += { "SmokeShellChristmasMuzzle" }; + class SmokeShellMuzzle; + class SmokeShellChristmasMuzzle : SmokeShellMuzzle { + displayName = "Christmas Smoke"; + magazines[] = { "cnto_humor_SmokeShellChristmas_mag" }; + }; + }; +}; diff --git a/addons/humor/christmas_smoke/jingle.wss b/addons/humor/christmas_smoke/jingle.wss new file mode 100644 index 0000000..002a96a Binary files /dev/null and b/addons/humor/christmas_smoke/jingle.wss differ