
Quake DeveLS - Drop It!
Author: Dan
Difficulty: Easy
Drop the weapon NOW
punk...
Here's some source code
I've been experimenting with. I envisionedcoupling it with some knock-back or
freeze code, to enable stealing weapons from an opponent, but my computer is
messed up and crashes about 50% of the time I load Quake2, so it's been tedious.
I modified the rail gun,
but my original idea was to modify the BFG. I figured if you had enough time to
blast someone with the BFG, they ought to pay for it by losing their weapons.
I modified the 3.14
version of the source code.
Open g_weapon.c and add to
fire_rail() function...
... gitem_t *item;int index, item_count; // to make it easier to add items to the list char *item_list[] = {"Shotgun", "Super Shotgun", "Machinegun","Chaingun", "Grenade Launcher", "Rocket Launcher", "HyperBlaster", "Railgun", "BFG10K"};item_count = 9; ... if ((tr.ent != self) && (tr.ent->takedamage)) { // if enemy is another player - client is null if computer/monster if (tr.ent->client) { // switch to blaster //Weapon_Blaster(&tr.ent); - couldn't get it to work // drop items for (index=0;indexclient->pers.inventory[ITEM_INDEX(item)]) { // make them drop it Drop_General(tr.ent,item); } } } T_Damage (tr.ent, self, self, aimdir, tr.endpos, tr.plane.normal,damage, kick, 0, MOD_RAILGUN);}
...That's
it. I couldn't get the code to make a player drop all weapons andswitch to
blaster. As it is, the player loses all weapons except the current one and the
blaster. If you use this code and make a weapon mod, let me know, so I can
download it.
Ed's note ... I think
you can make the player change to the blaster by using 'ent->nextweapon =
finditem("blaster")' (from memory, sorry didnt have time to test...)
else a 'qstuffcmd(ent, "Use Blaster\n");' would work too... - SumFuka
Tutorial by Dan
|
This
site, and all content and graphics displayed on it, |