From: Mario <mario@smbclan.net>
Date: Fri, 10 Mar 2017 21:15:03 +0000 (+1000)
Subject: Adjust compatibility to more closely resemble the original entities
X-Git-Tag: xonotic-v0.8.2~97
X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=3078db93453ea9bb2554c76486aaa9719f32a27b;p=xonotic%2Fxonotic-data.pk3dir.git

Adjust compatibility to more closely resemble the original entities
---

diff --git a/qcsrc/common/mutators/mutator/buffs/all.inc b/qcsrc/common/mutators/mutator/buffs/all.inc
index 943c75594..51bedbb51 100644
--- a/qcsrc/common/mutators/mutator/buffs/all.inc
+++ b/qcsrc/common/mutators/mutator/buffs/all.inc
@@ -45,8 +45,10 @@ REGISTER_BUFF(MEDIC) {
     this.m_color = '1 0.12 0';
 }
 BUFF_SPAWNFUNCS(medic, BUFF_MEDIC)
-BUFF_SPAWNFUNC_Q3TA_COMPAT(doubler, BUFF_MEDIC)
+BUFF_SPAWNFUNC_Q3TA_COMPAT(guard, BUFF_MEDIC)
 BUFF_SPAWNFUNC_Q3TA_COMPAT(medic, BUFF_MEDIC)
+BUFF_SPAWNFUNC_Q3TA_COMPAT(regen, BUFF_MEDIC)
+BUFF_SPAWNFUNC_Q3TA_COMPAT(revival, BUFF_MEDIC)
 
 REGISTER_BUFF(BASH) {
     this.m_prettyName = _("Bash");
@@ -87,6 +89,7 @@ REGISTER_BUFF(JUMP) {
     this.m_color = '0.24 0.78 1';
 }
 BUFF_SPAWNFUNCS(jump, BUFF_JUMP)
+BUFF_SPAWNFUNC_Q3TA_COMPAT(jumper, BUFF_JUMP)
 
 REGISTER_BUFF(INVISIBLE) {
     this.m_prettyName = _("Invisible");
@@ -136,3 +139,4 @@ REGISTER_BUFF(FLIGHT) {
     this.m_color = '0.23 0.44 1';
 }
 BUFF_SPAWNFUNCS(flight, BUFF_FLIGHT)
+BUFF_SPAWNFUNC_Q3TA_COMPAT(flight, BUFF_FLIGHT)
diff --git a/qcsrc/server/compat/quake3.qc b/qcsrc/server/compat/quake3.qc
index 02bd04d5d..6ed0e4052 100644
--- a/qcsrc/server/compat/quake3.qc
+++ b/qcsrc/server/compat/quake3.qc
@@ -7,6 +7,7 @@ spawnfunc(weapon_electro);
 spawnfunc(weapon_hagar);
 spawnfunc(weapon_machinegun);
 spawnfunc(weapon_vortex);
+spawnfunc(weapon_minelayer);
 
 spawnfunc(target_items);
 
@@ -15,7 +16,7 @@ spawnfunc(item_cells);
 spawnfunc(item_rockets);
 spawnfunc(item_shells);
 
-spawnfunc(item_jetpack);
+spawnfunc(item_strength);
 
 spawnfunc(item_armor_big);
 spawnfunc(item_armor_mega);
@@ -39,6 +40,10 @@ spawnfunc(ammo_bullets)        { spawnfunc_item_bullets(this);        }
 // GL -> Mortar
 spawnfunc(ammo_grenades)       { spawnfunc_item_rockets(this);        }
 
+// Mines -> Rockets
+spawnfunc(weapon_prox_launcher) { spawnfunc_weapon_minelayer(this);   }
+spawnfunc(ammo_mines)           { spawnfunc_item_rockets(this);       }
+
 // LG -> Lightning
 spawnfunc(weapon_lightning)    { spawnfunc_weapon_electro(this);      }
 spawnfunc(ammo_lightning)      { spawnfunc_item_cells(this);          }
@@ -48,7 +53,7 @@ spawnfunc(weapon_plasmagun)    { spawnfunc_weapon_hagar(this);        }
 spawnfunc(ammo_cells)          { spawnfunc_item_rockets(this);        }
 
 // Rail -> Vortex
-spawnfunc(weapon_railgun)      { spawnfunc_weapon_vortex(this);          }
+spawnfunc(weapon_railgun)      { spawnfunc_weapon_vortex(this);       }
 spawnfunc(ammo_slugs)          { spawnfunc_item_cells(this);          }
 
 // BFG -> Crylink
@@ -59,13 +64,16 @@ spawnfunc(ammo_bfg)            { spawnfunc_item_cells(this);          }
 spawnfunc(ammo_rockets)        { spawnfunc_item_rockets(this);        }
 
 // Armor
-spawnfunc(item_armor_body)     { spawnfunc_item_armor_mega(this);    }
+spawnfunc(item_armor_body)     { spawnfunc_item_armor_mega(this);     }
 spawnfunc(item_armor_combat)   { spawnfunc_item_armor_big(this);      }
 spawnfunc(item_armor_shard)    { spawnfunc_item_armor_small(this);    }
 spawnfunc(item_enviro)         { spawnfunc_item_invincible(this);     }
 
 // medkit -> armor (we have no holdables)
-spawnfunc(holdable_medkit)	   { spawnfunc_item_armor_mega(this);    }
+spawnfunc(holdable_medkit)	   { spawnfunc_item_armor_mega(this);     }
+
+// doubler -> strength
+spawnfunc(item_doubler)        { spawnfunc_item_strength(this); }
 
 .float wait;
 .float delay;
@@ -152,7 +160,7 @@ spawnfunc(target_give)
 	InitializeEntity(this, target_give_init, INITPRIO_FINDTARGET);
 }
 
-//spawnfunc(item_flight)       /* handled by jetpack */
+//spawnfunc(item_flight)       /* handled by buffs mutator */
 //spawnfunc(item_haste)        /* handled by buffs mutator */
 //spawnfunc(item_health)       /* handled in t_quake.qc */
 //spawnfunc(item_health_large) /* handled in t_items.qc */
@@ -163,11 +171,6 @@ spawnfunc(target_give)
 
 // CTF spawnfuncs handled in mutators/gamemode_ctf.qc now
 
-spawnfunc(item_flight)
-{
-	spawnfunc_item_jetpack(this);
-}
-
 .float notteam;
 .float notsingle;
 .float notfree;
diff --git a/qcsrc/server/compat/wop.qc b/qcsrc/server/compat/wop.qc
index 6d53e18ef..f6b2f2621 100644
--- a/qcsrc/server/compat/wop.qc
+++ b/qcsrc/server/compat/wop.qc
@@ -29,12 +29,14 @@ spawnfunc(item_haste);
 spawnfunc(item_health_medium);
 spawnfunc(item_health_mega);
 spawnfunc(item_invis);
-spawnfunc(item_medic);
 
 //***********************
 //WORD OF PADMAN ENTITIES - So people can play wop maps with the xonotic weapons
 //***********************
 
+//spawnfunc(item_revival)     /* handled by buffs mutator */
+//spawnfunc(item_jumper)      /* handled by buffs mutator */
+
 spawnfunc(weapon_punchy)	{ spawnfunc_weapon_arc(this);			}
 spawnfunc(weapon_nipper)	{ spawnfunc_weapon_machinegun(this);	}
 spawnfunc(weapon_pumper)	{ spawnfunc_weapon_shotgun(this);		}
@@ -56,7 +58,7 @@ spawnfunc(ammo_imperius)	{ spawnfunc_item_cells(this);			}
 spawnfunc(item_padpower)	{ spawnfunc_item_quad(this);			}
 spawnfunc(item_climber)		{ spawnfunc_item_invincible(this);		}
 spawnfunc(item_speedy)		{ spawnfunc_item_haste(this);			}
-spawnfunc(item_jump)		{ spawnfunc_item_jetpack(this);			}
 spawnfunc(item_visionless)	{ spawnfunc_item_invis(this);			}
-spawnfunc(item_revival)		{ spawnfunc_item_medic(this);			}
 spawnfunc(item_armor_padshield)	{ spawnfunc_item_armor_mega(this);	}
+
+spawnfunc(holdable_floater)		{ spawnfunc_item_jetpack(this);		}