Skip to content

Commit

Permalink
Vault Village: fixed turning in harry and reduced grenades to 5
Browse files Browse the repository at this point in the history
- Turning in checked the wrong GVAR (RPU uses GVAR_QUEST_VAULT_SERVANT, but Lujo needs GVAR_VAULT_SERVANT for all conditions to work which also seems more correct based on const names)
- Fix incorrect amount of money deducted when player says he doesn't have 2500 to return if he never brought explosives
  • Loading branch information
phobos2077 committed Aug 10, 2023
1 parent c8f7444 commit 2510f5d
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 66 deletions.
47 changes: 5 additions & 42 deletions scripts_src/valtcity/vcconnar.ssl
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@
#define NAME SCRIPT_VCCONNAR
#define TOWN_REP_VAR (GVAR_TOWN_REP_VAULT_CITY)

#define has_explosives ( ((obj_is_carrying_obj_pid(dude_obj,PID_FRAG_GRENADE)) >= 10) and ((obj_is_carrying_obj_pid(dude_obj,PID_DYNAMITE)) >= 2))
#define has_explosives ( ((obj_is_carrying_obj_pid(dude_obj,PID_FRAG_GRENADE)) >= 5) and ((obj_is_carrying_obj_pid(dude_obj,PID_DYNAMITE)) >= 2))

#include "../headers/command.h"
#include "../headers/modreact.h"
Expand Down Expand Up @@ -650,15 +650,6 @@ procedure Node013 begin
giq_option(4, SCRIPT_VCCONNAR, 803, Node999, 50);
end

//edited out by Lujo, unnecessary
/*procedure Node013a begin
// change to explosives by Lujo
if ( ((obj_is_carrying_obj_pid(dude_obj,PID_FRAG_GRENADE)) >= 10) and ((obj_is_carrying_obj_pid(dude_obj,PID_DYNAMITE)) >= 2)) then
call Node015;
else
call Node014;
end*/

//Repeats what he wants you to get
procedure Node014 begin
Reply(137);
Expand All @@ -667,32 +658,6 @@ procedure Node014 begin
NOption(138,Node999,004);
end

/*
procedure Node015 begin
variable item;
variable item1;
variable item2;

item1:=dude_item(PID_SHOTGUN);
item2:=dude_item(PID_ASSAULT_RIFLE);

item:=rm_mult_objs_from_inven(dude_obj,item1,1);
item:=rm_mult_objs_from_inven(dude_obj,item2,3);

add_mult_objs_to_inven(self_obj,item1,1);
add_mult_objs_to_inven(self_obj,item2,3);

inc_general_rep(REP_BONUS_HELPED_VAULT_VILLAGE);

set_global_var(GVAR_VAULT_VILLAGE,VILLAGE_DELIVERED_GUNS);

set_local_var(LVAR_Time_Delivered,game_time);

Reply(139);

NOption(140,Node999,004);
end
*/

//gun delivery node - WIN
procedure Node015 begin //edited by Lujo to include grenades
Expand All @@ -702,11 +667,9 @@ procedure Node015 begin //edited by Lujo to include grenades
LVar2 := dude_item(PID_DYNAMITE);
LVar3 := dude_item(PID_FRAG_GRENADE);
LVar1 := rm_mult_objs_from_inven(dude_obj, LVar2, 2);
//destroy_object(LVar2);
LVar1 := rm_mult_objs_from_inven(dude_obj, LVar3, 10);
//destroy_object(LVar3);
//add_mult_objs_to_inven(self_obj, LVar3, 10); - removed grenades from inventory so people wouldn't steal them
//add_mult_objs_to_inven(self_obj, LVar3, 10);
destroy_object(LVar2);
LVar1 := rm_mult_objs_from_inven(dude_obj, LVar3, 5);
destroy_object(LVar3);
set_global_var(GVAR_PLAYER_REPUTATION, global_var(GVAR_PLAYER_REPUTATION) + 20);
ndebug("Player gains " + 20 + " Karma Points.");
CheckKarma;
Expand Down Expand Up @@ -928,7 +891,7 @@ procedure Node028c begin
end

procedure Node028d begin
dude_caps_adjust(-2500);
dude_caps_adjust(-1250);
set_global_var(GVAR_PLAYER_REPUTATION, global_var(GVAR_PLAYER_REPUTATION) + 2);
Reply(mstr(740) + dude_name + mstr(741));
NOption(174, Node999, 4);
Expand Down
36 changes: 13 additions & 23 deletions scripts_src/valtcity/vcharry.ssl
Original file line number Diff line number Diff line change
Expand Up @@ -106,11 +106,6 @@ import variable plow1;
import variable plow2;
import variable Harry_Ptr;

//added by killap - expansion pack
variable gun1 := 0;
variable gun2 := 0;
//end

#define move_inven_to_box move_obj_inven_to_obj(self_obj, vault_city_harry_box);
#define move_inven_from_box move_obj_inven_to_obj(vault_city_harry_box, self_obj);
#define move_inven_to_temp_box move_obj_inven_to_obj(self_obj, vault_city_courtyard_temp_box);
Expand All @@ -135,13 +130,13 @@ procedure map_enter_p_proc begin

//added by killap - expansion pack (Village)
// changed by phobos2077 to reduce loot
if (global_var(GVAR_QUEST_VAULT_SERVANT) == SERVANT_TURNED_IN_HARRY and self_tile != JAIL_TILE) then begin
if (global_var(GVAR_VAULT_SERVANT) == SERVANT_TURNED_IN_HARRY and self_tile != JAIL_TILE) then begin
critter_attempt_placement(self_obj, JAIL_TILE, 0);
inven_unwield(self_obj);
store_shelf_obj := tile_contains_pid_obj(12112,dude_elevation,152);
move_obj_inven_to_obj(self_obj, store_shelf_obj);
move_obj_inven_to_obj(vault_city_harry_box, store_shelf_obj);
// phobos2077: reduce loot: all armors and 30% of other items
// phobos2077: reduce loot: all armors and 50% of other items
restock_amt := 0;
while (inven_ptr(store_shelf_obj, restock_amt) != 0) do begin
restock_obj := inven_ptr(store_shelf_obj, restock_amt);
Expand Down Expand Up @@ -221,7 +216,7 @@ procedure talk_p_proc begin
GetReaction;

//added by killap - expansion pack (Village)
if (global_var(GVAR_QUEST_VAULT_SERVANT) == SERVANT_TURNED_IN_HARRY) then
if (global_var(GVAR_VAULT_SERVANT) == SERVANT_TURNED_IN_HARRY) then
float_msg(self_obj, message_str(SCRIPT_VCHARRY, random(145, 149)), FLOAT_MSG_YELLOW);
//end
else if town_rep_is_vilified then begin
Expand Down Expand Up @@ -457,15 +452,18 @@ begin
giq_option(4, SCRIPT_VCHARRY, 134, Node013, BAD_REACTION); //killap
end

procedure GiveWeaponsForVillage
begin
// changed from weapons to explosives by Lujo/phobos2077
add_mult_objs_to_inven(dude_obj, create_object_sid(PID_DYNAMITE, 0, 0, -1), 2);
add_mult_objs_to_inven(dude_obj, create_object_sid(PID_FRAG_GRENADE, 0, 0, -1), 5);
end

procedure Node011
begin
set_local_var(LVAR_Village_Guns,2);
//set_local_var(7, 2);
// changed from weapons to explosives by Lujo
gun1 := create_object_sid(PID_DYNAMITE, 0, 0, -1);
gun2 := create_object_sid(PID_FRAG_GRENADE, 0, 0, -1);
add_mult_objs_to_inven(dude_obj, gun1, 2);
add_mult_objs_to_inven(dude_obj, gun2, 10);
call GiveWeaponsForVillage;
item_caps_adjust(dude_obj, -4000);
set_global_var(GVAR_QUEST_VAULT_VILLAGE, VILLAGE_QUEST_GOT_GUNS); //edit by killap
//set_global_var(GVAR_ENEMY_VAULT_VILLAGE, 8);
Expand All @@ -479,11 +477,7 @@ begin
begin
gsay_reply(SCRIPT_VCHARRY, 136); //killap
giq_option(4, SCRIPT_VCHARRY, 138, Node999, NEUTRAL_REACTION); //killap
// changed from weapons to explosives by Lujo
gun1 := create_object_sid(PID_DYNAMITE, 0, 0, -1);
gun2 := create_object_sid(PID_FRAG_GRENADE, 0, 0, -1);
add_mult_objs_to_inven(dude_obj, gun1, 2);
add_mult_objs_to_inven(dude_obj, gun2, 10);
call GiveWeaponsForVillage;
dude_caps_adjust(-2500);
//set_local_var(7, 2);
set_local_var(LVAR_Village_Guns,2);
Expand All @@ -503,11 +497,7 @@ begin
begin
gsay_reply(SCRIPT_VCHARRY, 136); //killap
giq_option(4, SCRIPT_VCHARRY, 138, Node999, NEUTRAL_REACTION); //killap
// changed from weapons to explosives by Lujo
gun1 := create_object_sid(PID_DYNAMITE, 0, 0, -1);
gun2 := create_object_sid(PID_FRAG_GRENADE, 0, 0, -1);
add_mult_objs_to_inven(dude_obj, gun1, 2);
add_mult_objs_to_inven(dude_obj, gun2, 10);
call GiveWeaponsForVillage;
dude_caps_adjust(-1000);
//set_local_var(7, 2);
set_local_var(LVAR_Village_Guns,2);
Expand Down
2 changes: 1 addition & 1 deletion scripts_src/valtcity/viharbox.ssl
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ end

procedure map_enter_p_proc begin
//added check by killap - expansion pack (Village)
if (global_var(GVAR_QUEST_VAULT_SERVANT) == SERVANT_TURNED_IN_HARRY) then return;
if (global_var(GVAR_VAULT_SERVANT) == SERVANT_TURNED_IN_HARRY) then return;

vault_city_harry_box := self_obj;
if (is_loading_game == false) then begin
Expand Down

0 comments on commit 2510f5d

Please sign in to comment.