From 1f0f36440f1959c158b7d6a73fd84e44b5452abc Mon Sep 17 00:00:00 2001 From: LegendaryGuard Date: Sun, 14 Feb 2021 17:57:46 +0100 Subject: [PATCH] Added Ammunitioning nade, enjoy the new nadegit add gfx/hud/luma/nade_ammo.tga Updated Armorizing nade, now it's running smoother --- gfx/hud/default/nade_ammo.tga | Bin 0 -> 65580 bytes gfx/hud/luma/nade_ammo.tga | Bin 0 -> 65580 bytes .../common/mutators/mutator/nades/effects.inc | 5 +- qcsrc/common/mutators/mutator/nades/nades.inc | 13 +- qcsrc/common/mutators/mutator/nades/nades.qc | 132 ++++++++++++++---- qcsrc/common/mutators/mutator/nades/nades.qh | 12 +- qcsrc/common/stats.qh | 2 + 7 files changed, 135 insertions(+), 29 deletions(-) create mode 100644 gfx/hud/default/nade_ammo.tga create mode 100644 gfx/hud/luma/nade_ammo.tga diff --git a/gfx/hud/default/nade_ammo.tga b/gfx/hud/default/nade_ammo.tga new file mode 100644 index 0000000000000000000000000000000000000000..31cf048fd545702177694be723446a3bd23e0f52 GIT binary patch literal 65580 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 Y-#os{Fn z!$_c|(7r8g;e|qhvce8zIp6PpOLCMDTKawsZ6Us{bIDq_r00LmxzD~W%Weh#>a03z zPxSi(Wf0q?L^8o37hpGO@gRc#r>3?td zOxBv-YIu&%bx(%`yI9?eyIS3gx?0CT$CmkTb>C0ChS%x!dY|6kaU<*GK{=6D z7y3N$M8qPO6|q!$!eKeRcFX2E@I8M7pnMNM@xb+zoOPH2<|~muu6y`wuK!Xn z&j9aS@YyJ=z-^N->}DNX(%tG+c8t|eRDLXUoHd|A)WaGis)VWn#QlNL03Pel>&)xR zjw;eB1Rr!nCq%%H(g}V(kiB5*63Pevnk(|-StWpdN1N4Ql3(V-XMz0!a8E@Kuk+*H zwGhlpz`Pu}1*buky{(w)zF-W#jRUOMra@M0bCea=GT4f5j<$TQF_y2z&8^!?;5MPf zV_1q9d_6$(h)c>`ZJ4A>D6I z@;}e(5}JIxFJA9womkd$TXBuimb)1Pe(bNj(_J=jyau-8Zrb31{Ow?m4vknLzYXk{vBz_5C2QSEj)L#cUiiR+Zi%*H>IYd-HT|uD=!D+rgJaMK9ShhOayw%SMDo4G1KO|9 z1Kp15f$zr0e%TKjsr^2H{Zg>c!H(aAO~>Bex4aj!*UuU(+?%3>ht1m<@9;GyITFA- zq4@+bAMQ$Q9_31E8SPAI84HaE*HgHi08I=_X_?d^rDbx5lt!p|a#(W9Bp0OTpi_A5 zcy7n){aOb;7{R(Hvi?v$Cz;Rl@wu^lehlAZ5c^I)t6xQLt4CQ6bQ8KDkNtps%FhG* z4(wLNDExlnce@flzE}CLkL+i&f6hYgg*`T2C!_DN>(IG_kh$pk!N|PFimQ*eymiTr zxY`r!-ntR?_`1lzJCbS_I1_6Z`l)6yw~GSz7x3JC zUNbN7`dJQN%?zyrO@dCbduztQ=M$ZR-R~iDo(b= zZa&2xS2o4rEt~0xFPmrgl`VvpI((a#Lo1VBq!=Xp(>qbFPqQ$v-q58w%D?XmS^)AK6|+3t{j4G7|%Ww zV@1~vvIbx$_QEddjNd3dpuHey6NZfo^1$D}59BR4CMp>Sc3AWh68IIV3`Hr}PrH;6bD;?gA=?-r}mNUK} z#}!|Y=kyh9fHpaOn+l!2!eXezi9%Uyngx#qEj zQ|+<&^Btbt6%J2!hSQyu3l+HBStTw{R)s4zs|Kof#jb6HT3p_BtuAlQY0&A=nE^U0 z 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 - //LegendGuard adds purple nade parts 08-02-2021 //LegendGuard adds green nade parts 11-02-2021 +//LegendGuard adds brown nade parts 13-02-2021 EFFECT(0, NADE_EXPLODE_RED, "nade_red_explode") EFFECT(0, NADE_EXPLODE_BLUE, "nade_blue_explode") EFFECT(0, NADE_EXPLODE_YELLOW, "nade_yellow_explode") EFFECT(0, NADE_EXPLODE_PINK, "nade_pink_explode") EFFECT(0, NADE_EXPLODE_NEUTRAL, "nade_neutral_explode") EFFECT(0, NADE_EXPLODE_GREEN, "nade_green_explode") +EFFECT(0, NADE_EXPLODE_BROWN, "nade_brown_explode") EFFECT(0, NADE_EXPLODE_PURPLE, "nade_purple_explode") entity EFFECT_NADE_EXPLODE(int teamid) @@ -27,6 +28,7 @@ EFFECT(1, NADE_TRAIL_YELLOW, "nade_yellow") EFFECT(1, NADE_TRAIL_PINK, "nade_pink") EFFECT(1, NADE_TRAIL_NEUTRAL, "nade_neutral") EFFECT(1, NADE_TRAIL_GREEN, "nade_green") +EFFECT(1, NADE_TRAIL_BROWN, "nade_brown") EFFECT(1, NADE_TRAIL_PURPLE, "nade_purple") entity EFFECT_NADE_TRAIL(int teamid) { @@ -45,6 +47,7 @@ EFFECT(1, NADE_TRAIL_BURN_YELLOW, "nade_yellow_burn") EFFECT(1, NADE_TRAIL_BURN_PINK, "nade_pink_burn") EFFECT(1, NADE_TRAIL_BURN_NEUTRAL, "nade_neutral_burn") EFFECT(1, NADE_TRAIL_BURN_GREEN, "nade_green_burn") +EFFECT(1, NADE_TRAIL_BURN_BROWN, "nade_brown_burn") EFFECT(1, NADE_TRAIL_BURN_PURPLE, "nade_purple_burn") entity EFFECT_NADE_TRAIL_BURN(int teamid) { diff --git a/qcsrc/common/mutators/mutator/nades/nades.inc b/qcsrc/common/mutators/mutator/nades/nades.inc index 4c3f0df64..24b32f84b 100644 --- a/qcsrc/common/mutators/mutator/nades/nades.inc +++ b/qcsrc/common/mutators/mutator/nades/nades.inc @@ -105,11 +105,22 @@ REGISTER_NADE(ARMORIZE) { #endif } +//LegendGuard writes Ammo nade code 13-02-2021 +REGISTER_NADE(AMMO) { + this.m_color = '0.66 0.33 0'; + this.m_name = _("Ammo grenade"); + this.m_icon = "nade_ammo"; +#ifdef GAMEQC + NADE_PROJECTILE(0, PROJECTILE_NADE_AMMO, EFFECT_NADE_TRAIL_BROWN); + NADE_PROJECTILE(1, PROJECTILE_NADE_AMMO_BURN, EFFECT_NADE_TRAIL_BURN_BROWN); +#endif +} + //LegendGuard writes Dark nade code 08-02-2021 REGISTER_NADE(DARK) { this.m_color = '0.23 0 0.23'; this.m_name = _("Dark grenade"); - this.m_icon = "nade_dark"; + this.m_icon = "nade_dark"; //nade icon (put texture, please) #ifdef GAMEQC NADE_PROJECTILE(0, PROJECTILE_NADE_DARK, EFFECT_NADE_TRAIL_PURPLE); NADE_PROJECTILE(1, PROJECTILE_NADE_DARK_BURN, EFFECT_NADE_TRAIL_BURN_PURPLE); diff --git a/qcsrc/common/mutators/mutator/nades/nades.qc b/qcsrc/common/mutators/mutator/nades/nades.qc index c9f25b9cb..a5b4a39c3 100644 --- a/qcsrc/common/mutators/mutator/nades/nades.qc +++ b/qcsrc/common/mutators/mutator/nades/nades.qc @@ -67,6 +67,12 @@ MUTATOR_HOOKFUNCTION(cl_nades, HUD_Draw_overlay) M_ARGV(1, float) = STAT(ARMORIZING_ORB_ALPHA); return true; } + if (STAT(AMMUNITIONING_ORB) > time) //LegendGuard adds new nade STAT ORB (keep in mind: qcsrc/common/stats.qh) 13-02-2021 + { + M_ARGV(0, vector) = NADE_TYPE_AMMO.m_color; + M_ARGV(1, float) = STAT(AMMUNITIONING_ORB_ALPHA); + return true; + } if (STAT(DARK_ORB) > time) //LegendGuard adds new nade STAT ORB (keep in mind: qcsrc/common/stats.qh) 08-02-2021 { M_ARGV(0, vector) = NADE_TYPE_DARK.m_color; @@ -714,20 +720,17 @@ void nade_veil_boom(entity this) settouch(orb, nade_veil_touch); orb.colormod = NADE_TYPE_VEIL.m_color; } -/**************LEGENDGUARD NEW NADES: ARMORIZE AND DARK NADES functions "cl_nade_type 10" and "cl_nade_type 11" *** //more ideas: BLOCKING NADE ***********************/ +/**************LEGENDGUARD NEW NADES: ARMORIZE, AMMO AND DARK NADES functions "cl_nade_type 10", "cl_nade_type 11" and "cl_nade_type 12" *** //more ideas: BLOCKING NADE ***********************/ void nade_armorize_touch(entity this, entity toucher) { - float maxarmor; - float maxhealth; float armor_factor; - float health_foemantain; - float health_maintaining = 1; + float maxarmor = 999; + float ar = GetResource(toucher, RES_ARMOR); if(IS_PLAYER(toucher) || IS_MONSTER(toucher)) if(!IS_DEAD(toucher)) if(!STAT(FROZEN, toucher)) { armor_factor = autocvar_g_nades_armorize_rate*frametime/2; - health_foemantain = autocvar_g_nades_armorize_rate*frametime/2; if ( toucher != this.realowner ) { if ( SAME_TEAM(toucher,this) ) @@ -736,18 +739,11 @@ void nade_armorize_touch(entity this, entity toucher) } else { - //maintain foe health and reduce armor armor_factor *= autocvar_g_nades_armorize_foe; - if (autocvar_g_nades_armorize_friend > 1 || autocvar_g_nades_armorize_friend < 1) - health_foemantain *= health_maintaining; - else - health_foemantain *= autocvar_g_nades_armorize_friend; } } if ( armor_factor > 0 ) { - maxarmor = 200; - float ar = GetResource(toucher, RES_ARMOR); if (ar < maxarmor) { if (this.nade_show_particles) @@ -759,17 +755,9 @@ void nade_armorize_touch(entity this, entity toucher) } else if ( armor_factor < 0 ) { - //Foe should drop only armor points - maxhealth = (IS_MONSTER(toucher)) ? toucher.max_health : g_pickup_healthmega_max; - float hp = GetResource(toucher, RES_HEALTH); - if (hp < maxhealth) - { - if ((GetResource(toucher, RES_ARMOR) <= 0) && (GetResource(toucher, RES_HEALTH) <= 9999)) - return; - else - GiveResourceWithLimit(toucher, RES_HEALTH, health_foemantain/1.3, maxhealth); - Damage(toucher,this,this.realowner,-armor_factor,DEATH_NADE_HEAL.m_id,DMG_NOWEP,toucher.origin,'0 0 0'); - } + //Foe drops armor points + if (ar > 0) + SetResource(toucher, RES_ARMOR, ar + armor_factor); } } @@ -789,6 +777,94 @@ void nade_armorize_boom(entity this) orb.colormod = '0.33 1 0.66'; } /***********************************************************************************/ +//LegendGuard develops ammo nade 13-02-2021 +void nade_ammo_touch(entity this, entity toucher) +{ + float maxammo = 999; + float ammo_factor; + float amshells = GetResource(toucher, RES_SHELLS); + float ambullets = GetResource(toucher, RES_BULLETS); + float amrockets = GetResource(toucher, RES_ROCKETS); + float amcells = GetResource(toucher, RES_CELLS); + float amplasma = GetResource(toucher, RES_PLASMA); + if(IS_PLAYER(toucher) || IS_MONSTER(toucher)) + if(!IS_DEAD(toucher)) + if(!STAT(FROZEN, toucher)) + { + ammo_factor = autocvar_g_nades_ammo_rate*frametime/2; + if ( toucher != this.realowner ) + { + if ( SAME_TEAM(toucher,this) ) + { + ammo_factor *= autocvar_g_nades_ammo_friend; + } + else + { + ammo_factor *= autocvar_g_nades_ammo_foe; + } + } + if ( ammo_factor > 0 ) + { + if ((amshells < maxammo) && (ambullets < maxammo) && (amrockets < maxammo) && (amcells < maxammo) && (amplasma < maxammo)) + { + if (this.nade_show_particles) + { + Send_Effect(EFFECT_HEALING, toucher.origin, '0 0 0', 1); + } + GiveResourceWithLimit(toucher, RES_SHELLS, ammo_factor, maxammo); + GiveResourceWithLimit(toucher, RES_BULLETS, ammo_factor, maxammo); + GiveResourceWithLimit(toucher, RES_ROCKETS, ammo_factor, maxammo); + GiveResourceWithLimit(toucher, RES_CELLS, ammo_factor, maxammo); + GiveResourceWithLimit(toucher, RES_PLASMA, ammo_factor, maxammo); + } + } + else if ( ammo_factor < 0 ) + { + //Foe drops ammo points + if (amshells > 0) + { + SetResource(toucher, RES_SHELLS, amshells + ammo_factor); + } + + if (ambullets > 0) + { + SetResource(toucher, RES_BULLETS, ambullets + ammo_factor); + } + + if (amrockets > 0) + { + SetResource(toucher, RES_ROCKETS, amrockets + ammo_factor); + } + + if (amcells > 0) + { + SetResource(toucher, RES_CELLS, amcells + ammo_factor); + } + + if (amplasma > 0) + { + SetResource(toucher, RES_PLASMA, amplasma + ammo_factor); + } + return; + } + } + + if ( IS_REAL_CLIENT(toucher) || IS_VEHICLE(toucher) ) + { + entity show_brown = (IS_VEHICLE(toucher)) ? toucher.owner : toucher; + STAT(AMMUNITIONING_ORB, show_brown) = time+0.1; + STAT(AMMUNITIONING_ORB_ALPHA, show_brown) = 0.75 * (this.ltime - time) / this.orb_lifetime; + } +} + +void nade_ammo_boom(entity this) +{ + entity orb = nades_spawn_orb(this.owner, this.realowner, this.origin, autocvar_g_nades_ammo_time, autocvar_g_nades_nade_radius); + + settouch(orb, nade_ammo_touch); + orb.colormod = '0.66 0.33 0'; +} +/***********************************************************************************/ //remember to put an image in gfx/hud/luma and gfx/hud/default per each nade_blabla.tga //dark nade does damage like a normal nade but the damage is minor void dark_damage(entity this, float radius, float damage) @@ -901,6 +977,11 @@ void nade_boom(entity this) expef = EFFECT_SPAWN_NEUTRAL; break; + case NADE_TYPE_AMMO: //LegendGuard adds nade case 13-02-2021 + nade_blast = false; + expef = EFFECT_SPAWN_NEUTRAL; + break; + case NADE_TYPE_DARK: //LegendGuard adds nade case 08-02-2021 nade_blast = false; expef = EFFECT_EXPLOSION_MEDIUM; @@ -939,6 +1020,7 @@ void nade_boom(entity this) case NADE_TYPE_ENTRAP: nade_entrap_boom(this); break; case NADE_TYPE_VEIL: nade_veil_boom(this); break; case NADE_TYPE_ARMORIZE: nade_armorize_boom(this); break; //LegendGuard adds the register of new nade 11-02-2021 + case NADE_TYPE_AMMO: nade_ammo_boom(this); break; //LegendGuard adds the register of new nade 13-02-2021 case NADE_TYPE_DARK: nade_dark_boom(this); break; //LegendGuard adds the register of new nade 08-02-2021 } @@ -1716,6 +1798,8 @@ MUTATOR_HOOKFUNCTION(nades, SpectateCopy) STAT(VEIL_ORB_ALPHA, client) = STAT(VEIL_ORB_ALPHA, spectatee); STAT(ARMORIZING_ORB, client) = STAT(ARMORIZING_ORB, spectatee); //LegendGuard adds nade STAT client 11-02-2021 STAT(ARMORIZING_ORB_ALPHA, client) = STAT(ARMORIZING_ORB_ALPHA, spectatee); + STAT(AMMUNITIONING_ORB, client) = STAT(AMMUNITIONING_ORB, spectatee); //LegendGuard adds nade STAT client 13-02-2021 + STAT(AMMUNITIONING_ORB_ALPHA, client) = STAT(AMMUNITIONING_ORB_ALPHA, spectatee); STAT(DARK_ORB, client) = STAT(DARK_ORB, spectatee); //LegendGuard adds nade STAT client 08-02-2021 STAT(DARK_ORB_ALPHA, client) = STAT(DARK_ORB_ALPHA, spectatee); } diff --git a/qcsrc/common/mutators/mutator/nades/nades.qh b/qcsrc/common/mutators/mutator/nades/nades.qh index 142728344..e093a9961 100644 --- a/qcsrc/common/mutators/mutator/nades/nades.qh +++ b/qcsrc/common/mutators/mutator/nades/nades.qh @@ -68,6 +68,10 @@ float autocvar_g_nades_armorize_time = 5; //LegendGuard adds new nade cvars 11-0 float autocvar_g_nades_armorize_rate = 30; float autocvar_g_nades_armorize_friend = 1; float autocvar_g_nades_armorize_foe = -2; +float autocvar_g_nades_ammo_time = 5; //LegendGuard adds new nade cvars 13-02-2021 +float autocvar_g_nades_ammo_rate = 30; +float autocvar_g_nades_ammo_friend = 1; +float autocvar_g_nades_ammo_foe = -2; float autocvar_g_nades_dark_damage = 25; //LegendGuard adds new nade cvars 08-02-2021 float autocvar_g_nades_dark_time = 13; float autocvar_g_nades_dark_radius = 700; @@ -95,8 +99,10 @@ const int PROJECTILE_NADE_VEIL = 86; const int PROJECTILE_NADE_VEIL_BURN = 87; const int PROJECTILE_NADE_ARMORIZE = 88; //LegendGuard adds new nade MACROS 11-02-2021 const int PROJECTILE_NADE_ARMORIZE_BURN = 89; -const int PROJECTILE_NADE_DARK = 90; //LegendGuard adds new nade MACROS 08-02-2021 -const int PROJECTILE_NADE_DARK_BURN = 91; +const int PROJECTILE_NADE_AMMO = 90; //LegendGuard adds new nade MACROS 13-02-2021 +const int PROJECTILE_NADE_AMMO_BURN = 91; +const int PROJECTILE_NADE_DARK = 92; //LegendGuard adds new nade MACROS 08-02-2021 +const int PROJECTILE_NADE_DARK_BURN = 93; REGISTRY(Nades, BITS(4)) REGISTER_REGISTRY(Nades) @@ -338,7 +344,7 @@ NET_HANDLE(TE_CSQC_DARKBLINKING, bool isNew) if(darkblink) return; - localcmd("play2 sound/misc/blind\n"); + localcmd("play2 sound/misc/bzzz\n"); darkblink = true; dark_appeartime = time; dark_fadetime = time + 9; diff --git a/qcsrc/common/stats.qh b/qcsrc/common/stats.qh index f539f97a9..4b382a2d2 100644 --- a/qcsrc/common/stats.qh +++ b/qcsrc/common/stats.qh @@ -140,6 +140,8 @@ REGISTER_STAT(VEIL_ORB, float) REGISTER_STAT(VEIL_ORB_ALPHA, float) REGISTER_STAT(ARMORIZING_ORB, float) //LegendGuard registers new STAT 11-02-2021 REGISTER_STAT(ARMORIZING_ORB_ALPHA, float) +REGISTER_STAT(AMMUNITIONING_ORB, float) //LegendGuard registers new STAT 11-02-2021 +REGISTER_STAT(AMMUNITIONING_ORB_ALPHA, float) REGISTER_STAT(DARK_ORB, float) //LegendGuard registers new STAT 08-02-2021 REGISTER_STAT(DARK_ORB_ALPHA, float) -- 2.39.2