mirror of
https://github.com/JezuzLizard/BO2-Reimagined.git
synced 2025-06-10 15:17:57 -05:00
Origins: make staff parts HUD show player staff and player gem
Origins: make staff parts HUD not show player staff on staff crafted
This commit is contained in:
@ -62,6 +62,14 @@ register_clientfields()
|
||||
setupclientfieldcodecallbacks("world", 1, "piece_record_zm_vinyl_fire");
|
||||
setupclientfieldcodecallbacks("world", 1, "piece_record_zm_vinyl_lightning");
|
||||
bits = getminbitcountfornum(5);
|
||||
registerclientfield("world", "gem_player1", 14000, bits, "int", undefined, 0, 1);
|
||||
registerclientfield("world", "gem_player2", 14000, bits, "int", undefined, 0, 1);
|
||||
registerclientfield("world", "gem_player3", 14000, bits, "int", undefined, 0, 1);
|
||||
registerclientfield("world", "gem_player4", 14000, bits, "int", undefined, 0, 1);
|
||||
setupclientfieldcodecallbacks("world", 1, "gem_player1");
|
||||
setupclientfieldcodecallbacks("world", 1, "gem_player2");
|
||||
setupclientfieldcodecallbacks("world", 1, "gem_player3");
|
||||
setupclientfieldcodecallbacks("world", 1, "gem_player4");
|
||||
registerclientfield("world", "staff_player1", 14000, bits, "int", undefined, 0, 1);
|
||||
registerclientfield("world", "staff_player2", 14000, bits, "int", undefined, 0, 1);
|
||||
registerclientfield("world", "staff_player3", 14000, bits, "int", undefined, 0, 1);
|
||||
|
@ -86,6 +86,10 @@ register_clientfields()
|
||||
registerclientfield("scriptmover", "bryce_cake", 14000, 2, "int", undefined, 0);
|
||||
registerclientfield("scriptmover", "switch_spark", 14000, 1, "int", undefined, 0);
|
||||
bits = getminbitcountfornum(5);
|
||||
registerclientfield("world", "gem_player1", 14000, bits, "int", undefined, 0);
|
||||
registerclientfield("world", "gem_player2", 14000, bits, "int", undefined, 0);
|
||||
registerclientfield("world", "gem_player3", 14000, bits, "int", undefined, 0);
|
||||
registerclientfield("world", "gem_player4", 14000, bits, "int", undefined, 0);
|
||||
registerclientfield("world", "staff_player1", 14000, bits, "int", undefined, 0);
|
||||
registerclientfield("world", "staff_player2", 14000, bits, "int", undefined, 0);
|
||||
registerclientfield("world", "staff_player3", 14000, bits, "int", undefined, 0);
|
||||
@ -652,4 +656,53 @@ track_staff_weapon_respawn_player_disconnect_monitor(player)
|
||||
model = getent("craftable_" + self.base_weaponname, "targetname");
|
||||
model show();
|
||||
flag_set(self.base_weaponname + "_enabled");
|
||||
}
|
||||
|
||||
onpickup_crystal(player, elementname, elementenum)
|
||||
{
|
||||
onpickup_common(player);
|
||||
level setclientfield("piece_staff_zm_gem_" + elementname, 1);
|
||||
n_player = player getentitynumber() + 1;
|
||||
level setclientfield("gem_player" + n_player, elementenum);
|
||||
|
||||
if (flag("any_crystal_picked_up"))
|
||||
self.piecestub.vox_id = undefined;
|
||||
|
||||
flag_set("any_crystal_picked_up");
|
||||
}
|
||||
|
||||
clear_player_crystal(n_element)
|
||||
{
|
||||
if (n_element == self.crystal_id)
|
||||
{
|
||||
n_player = self getentitynumber() + 1;
|
||||
level setclientfield("gem_player" + n_player, 0);
|
||||
self.crystal_id = 0;
|
||||
}
|
||||
}
|
||||
|
||||
staff_fullycrafted(modelname, elementenum)
|
||||
{
|
||||
player = get_closest_player(self.origin);
|
||||
staff_model = getent(modelname, "targetname");
|
||||
staff_info = get_staff_info_from_element_index(elementenum);
|
||||
staff_model useweaponmodel(staff_info.weapname);
|
||||
staff_model showallparts();
|
||||
level notify("quest_progressed", player, 0);
|
||||
|
||||
if (!isdefined(staff_model.inused))
|
||||
{
|
||||
staff_model show();
|
||||
staff_model.inused = 1;
|
||||
level.n_staffs_crafted++;
|
||||
|
||||
if (level.n_staffs_crafted == 4)
|
||||
flag_set("ee_all_staffs_crafted");
|
||||
}
|
||||
|
||||
player clear_player_crystal(elementenum);
|
||||
|
||||
str_fieldname = "quest_state" + elementenum;
|
||||
level setclientfield(str_fieldname, 3);
|
||||
return true;
|
||||
}
|
@ -29,6 +29,9 @@ main()
|
||||
replaceFunc(maps\mp\zm_tomb_craftables::init_craftables, scripts\zm\replaced\zm_tomb_craftables::init_craftables);
|
||||
replaceFunc(maps\mp\zm_tomb_craftables::include_craftables, scripts\zm\replaced\zm_tomb_craftables::include_craftables);
|
||||
replaceFunc(maps\mp\zm_tomb_craftables::track_staff_weapon_respawn, scripts\zm\replaced\zm_tomb_craftables::track_staff_weapon_respawn);
|
||||
replaceFunc(maps\mp\zm_tomb_craftables::onpickup_crystal, scripts\zm\replaced\zm_tomb_craftables::onpickup_crystal);
|
||||
replaceFunc(maps\mp\zm_tomb_craftables::clear_player_crystal, scripts\zm\replaced\zm_tomb_craftables::clear_player_crystal);
|
||||
replaceFunc(maps\mp\zm_tomb_craftables::staff_fullycrafted, scripts\zm\replaced\zm_tomb_craftables::staff_fullycrafted);
|
||||
replaceFunc(maps\mp\zm_tomb_dig::init_shovel, scripts\zm\replaced\zm_tomb_dig::init_shovel);
|
||||
replaceFunc(maps\mp\zm_tomb_dig::waittill_dug, scripts\zm\replaced\zm_tomb_dig::waittill_dug);
|
||||
replaceFunc(maps\mp\zm_tomb_dig::increment_player_perk_purchase_limit, scripts\zm\replaced\zm_tomb_dig::increment_player_perk_purchase_limit);
|
||||
|
Reference in New Issue
Block a user