Add rudimentary support for World of Padman map entities, by Gnom
authorMario <mario@smbclan.net>
Sun, 25 Dec 2016 11:59:50 +0000 (21:59 +1000)
committerMario <mario@smbclan.net>
Sun, 25 Dec 2016 11:59:50 +0000 (21:59 +1000)
qcsrc/server/compat/_mod.inc
qcsrc/server/compat/_mod.qh
qcsrc/server/compat/wop.qc [new file with mode: 0644]
qcsrc/server/compat/wop.qh [new file with mode: 0644]
qcsrc/server/mutators/mutator/gamemode_ctf.qc

index c8c941a..69d031e 100644 (file)
@@ -2,3 +2,4 @@
 #include <server/compat/halflife.qc>
 #include <server/compat/quake.qc>
 #include <server/compat/quake3.qc>
+#include <server/compat/wop.qc>
index 5c9b591..bd65858 100644 (file)
@@ -2,3 +2,4 @@
 #include <server/compat/halflife.qh>
 #include <server/compat/quake.qh>
 #include <server/compat/quake3.qh>
+#include <server/compat/wop.qh>
diff --git a/qcsrc/server/compat/wop.qc b/qcsrc/server/compat/wop.qc
new file mode 100644 (file)
index 0000000..7c27cf4
--- /dev/null
@@ -0,0 +1,60 @@
+#include "wop.qh"
+
+#include <common/weapons/_all.qh>
+// #include <server/mutators/gamemode.qh>
+
+spawnfunc(weapon_arc);
+spawnfunc(weapon_crylink);
+spawnfunc(weapon_electro);
+spawnfunc(weapon_mortar);
+spawnfunc(weapon_hagar);
+spawnfunc(weapon_machinegun);
+spawnfunc(weapon_devastator);
+spawnfunc(weapon_shotgun);
+spawnfunc(weapon_vortex);
+
+spawnfunc(item_armor_big);
+spawnfunc(item_armor_mega);
+spawnfunc(item_armor_small);
+
+spawnfunc(item_bullets);
+spawnfunc(item_cells);
+spawnfunc(item_quad);
+spawnfunc(item_rockets);
+spawnfunc(item_shells);
+
+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(weapon_punchy)       { spawnfunc_weapon_arc(this);                   }
+spawnfunc(weapon_nipper)       { spawnfunc_weapon_machinegun(this);    }
+spawnfunc(weapon_pumper)       { spawnfunc_weapon_shotgun(this);               }
+spawnfunc(weapon_boaster)      { spawnfunc_weapon_electro(this);               }
+spawnfunc(weapon_splasher)     { spawnfunc_weapon_vortex(this);                }
+spawnfunc(weapon_bubbleg)      { spawnfunc_weapon_hagar(this);                 }
+spawnfunc(weapon_balloony)     { spawnfunc_weapon_mortar(this);                }
+spawnfunc(weapon_betty)                { spawnfunc_weapon_devastator(this);    }
+spawnfunc(weapon_imperius)     { spawnfunc_weapon_crylink(this);               }
+
+spawnfunc(ammo_pumper)         { spawnfunc_item_shells(this);                  }
+spawnfunc(ammo_nipper)         { spawnfunc_item_bullets(this);                 }
+spawnfunc(ammo_balloony)       { spawnfunc_item_rockets(this);                 }
+spawnfunc(ammo_bubbleg)                { spawnfunc_item_rockets(this);                 }
+spawnfunc(ammo_boaster)                { spawnfunc_item_cells(this);                   }
+spawnfunc(ammo_betty)          { spawnfunc_item_rockets(this);                 }
+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_flight(this);                  }
+spawnfunc(item_visionless)     { spawnfunc_item_invis(this);                   }
+spawnfunc(item_revival)                { spawnfunc_item_medic(this);                   }
+spawnfunc(item_armor_padshield)        { spawnfunc_item_armor_mega(this);      }
diff --git a/qcsrc/server/compat/wop.qh b/qcsrc/server/compat/wop.qh
new file mode 100644 (file)
index 0000000..6f70f09
--- /dev/null
@@ -0,0 +1 @@
+#pragma once
index 27fd46b..d1c97bd 100644 (file)
@@ -2592,6 +2592,14 @@ spawnfunc(team_CTF_bluespawn)  { spawnfunc_info_player_team2(this);  }
 spawnfunc(team_CTF_neutralflag)        { spawnfunc_item_flag_neutral(this);  }
 spawnfunc(team_neutralobelisk) { spawnfunc_item_flag_neutral(this);  }
 
+// compatibility for wop maps
+spawnfunc(team_redplayer)      { spawnfunc_info_player_team1(this);  }
+spawnfunc(team_blueplayer)     { spawnfunc_info_player_team2(this);  }
+spawnfunc(team_ctl_redlolly)   { spawnfunc_item_flag_team1(this);    }
+spawnfunc(team_CTL_redlolly)   { spawnfunc_item_flag_team1(this);    }
+spawnfunc(team_ctl_bluelolly)  { spawnfunc_item_flag_team2(this);    }
+spawnfunc(team_CTL_bluelolly)  { spawnfunc_item_flag_team2(this);    }
+
 
 // ==============
 // Initialization