MCPcopy Create free account
hub / github.com/demoth/jake2 / use

Method use

game/src/main/java/jake2/game/PlayerWeapon.java:716–748  ·  view source on GitHub ↗
(SubgameEntity ent, GameItem item, GameExportsImpl gameExports)

Source from the content-addressed store, hash-verified

714 public String getID() { return "Use_Weapon"; }
715
716 public void use(SubgameEntity ent, GameItem item, GameExportsImpl gameExports) {
717 int ammo_index;
718 GameItem ammo_item;
719
720 // see if we're already using it
721 gclient_t client = ent.getClient();
722 if (item == client.pers.weapon)
723 return;
724
725 if (item.ammo != null && 0 == gameExports.gameCvars.g_select_empty.value
726 && 0 == (item.flags & GameDefines.IT_AMMO)) {
727
728 ammo_item = GameItems.FindItem(item.ammo, gameExports);
729 ammo_index = ammo_item.index;
730
731 if (0 == client.pers.inventory[ammo_index]) {
732 gameExports.gameImports.cprintf(ent, Defines.PRINT_HIGH, "No "
733 + ammo_item.pickup_name + " for "
734 + item.pickup_name + ".\n");
735 return;
736 }
737
738 if (client.pers.inventory[ammo_index] < item.quantity) {
739 gameExports.gameImports.cprintf(ent, Defines.PRINT_HIGH, "Not enough "
740 + ammo_item.pickup_name + " for "
741 + item.pickup_name + ".\n");
742 return;
743 }
744 }
745
746 // change to this weapon when down
747 client.newweapon = item;
748 }
749 };
750
751 /*

Callers

nothing calls this directly

Calls 3

FindItemMethod · 0.95
cprintfMethod · 0.65
getClientMethod · 0.45

Tested by

no test coverage detected