Skip to content

Commit

Permalink
Fix broken craft learning messages, fix compile errors
Browse files Browse the repository at this point in the history
  • Loading branch information
phobos2077 committed May 19, 2024
1 parent de32426 commit d9bd8b3
Show file tree
Hide file tree
Showing 21 changed files with 63 additions and 33 deletions.
14 changes: 14 additions & 0 deletions docs/spoilers.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
Where to get all crafting schematics:

- Arroyo Bridge - Minoc - Blades.
- Klamath Trapper Town - Nameless trapper near barrel - Leather Jacket.
- Den West - Smitty - Explosives.
- Den East - Mom - Food.
- Den West - Vic - Blades.
- Modoc Main - Balthas - Leather & metal armor.
- Redding Downtown - Dr. John - First Aid drugs.
- Vault City Vault - Dr. Troy - Advanced drugs.
- Vault City - Valerie - Electronics.
- Gecko Junkyard - Skeeter - Tools.
- Vault 15 Library - Computer - Electronics + Advanced Electronics
- Wasteland - Any deathclaw - A special melee weapon.
2 changes: 1 addition & 1 deletion root/data/text/english/dialog/dcvic.msg
Original file line number Diff line number Diff line change
Expand Up @@ -430,7 +430,7 @@
{5101}{}{Well, I AM a mechanic, boss, but, err, I'm more of a repairman. Not what you'd call a tradesman. Or a crafter.}
{5102}{}{So you can't in fact make anything... meckanicky?}
{5103}{}{Well... I can sharpen a spear.}
{5104}{}{There's guys in my village who can sharpen spears! Do you know of anyone who's more of a crafter?}
{5104}{}{Guys in my village can sharpen spears! Do you know of anyone who's more of a crafter?}
{51041}{}{That's better than nothing. Show me.}
{5105}{}{Here's how you do it... [Vic explains] You'll need a piece of flint though. Mom probably has some.}
{5106}{}{Ok, noted. Do you know of anyone who's more of a crafter?}
Expand Down
19 changes: 19 additions & 0 deletions scripts_src/_pbs_craft/craft_msg.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
#ifndef PBS_CRAFT_MSG_H
#define PBS_CRAFT_MSG_H

#include "../sfall/sfall.h"

#define PBS_CRAFT_MSG_NAME "pbs_craft.msg"

variable craft_msg_file_id;

procedure mstr_pbs_craft(variable num) begin
if (not craft_msg_file_id) then
craft_msg_file_id := add_extra_msg_file(PBS_CRAFT_MSG_NAME);

return message_str_game(craft_msg_file_id, num);
end

#undef PBS_CRAFT_MSG_NAME

#endif
10 changes: 3 additions & 7 deletions scripts_src/_pbs_craft/crafting.h
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,12 @@

#define craft_debug(text) if (true) then debug_msg("[craft] "+text)

#include "craft_msg.h"
#include "craft_utils.h"
#include "craft_config.h"

#define mstr_craft(num) mstr_pbs_craft(num)

#define ITEMS_PER_SCREEN 9

#define MODE_EXIT 0
Expand All @@ -31,13 +34,11 @@
// should typically be ITEMS_PER_SCREEN + 2
#define MAX_CATEGORIES (ITEMS_PER_SCREEN + 2)

#define EXTRA_MSG_NAME "pbs_craft.msg"
#define EXP_MAP_NAME "pbs_craft_exp"
#define pcx_path(name) "pcx\\" #name ".pcx"


variable begin
craft_msg_id;
craft_ui_mode;
use_categories := false;
craft_exp_map; // maps output item PID to 1 if exp was granted for crafting
Expand All @@ -62,10 +63,6 @@ variable begin
num_options;
end

procedure mstr_craft(variable num) begin
return message_str_game(craft_msg_id, num);
end

#define has_prev_page (cur_pos > 0)
#define has_next_page (cur_pos + ITEMS_PER_SCREEN < items_avail - 1)

Expand Down Expand Up @@ -113,7 +110,6 @@ procedure loop_mode;


procedure init_crafting begin
craft_msg_id := add_extra_msg_file(EXTRA_MSG_NAME);
craft_ui_mode := MODE_EXIT;
craft_raw_cfg := load_raw_crafting_config;
craft_exp_map := load_create_array_map(EXP_MAP_NAME);
Expand Down
7 changes: 4 additions & 3 deletions scripts_src/_pbs_craft/learn_craft.h
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
#ifndef LEARN_CRAFT_H
#define LEARN_CRAFT_H

#define fixit_mstr(x) message_str(SCRIPT_TEST0,x)
#include "craft_msg.h"

#define dude_barter (has_skill(dude_obj,SKILL_BARTER))
#define dude_barter (has_skill(dude_obj,SKILL_BARTER))

// new GVARs (using Reserved GVARs 11-20)
//#define GVAR_CRAFT_EXPLOSIVES (644)
Expand All @@ -29,7 +29,8 @@
#define SGVAR_CRAFT_TOOLS "CRFT_TOL"
#define SGVAR_CRAFT_DEATHCLAW "CRFT_GNT"

#define crafting_mod_available (message_str(SCRIPT_TEST0, 1000) != "Error")
// TODO: option to disable crafting?
#define crafting_mod_available (true)

#include "../headers/global.h"
#include "../headers/scripts.h"
Expand Down
2 changes: 1 addition & 1 deletion scripts_src/_pbs_craft/learn_craft_balthas.h
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ procedure NodeCraft4 begin
game_time_advance(18000);
set_sfall_global(SGVAR_CRAFT_JACKET, 1);
set_sfall_global(SGVAR_CRAFT_LEATHER, 1);
display_msg(fixit_mstr(82));
display_msg(mstr_pbs_craft(82));
gfade_in(400);
Reply(1041);
NOption(1042, Node999, 004);
Expand Down
2 changes: 1 addition & 1 deletion scripts_src/_pbs_craft/learn_craft_drjohn.h
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ procedure NodeCraft4 begin
gfade_out(400);
game_time_advance(18000);
set_sfall_global(SGVAR_CRAFT_FIRST_AID, 1);
display_msg(fixit_mstr(83));
display_msg(mstr_pbs_craft(83));
gfade_in(400);
Reply(551);
NOption(552, Node999, 004);
Expand Down
2 changes: 1 addition & 1 deletion scripts_src/_pbs_craft/learn_craft_drtroy.h
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ procedure NodeCraft5 begin
gfade_out(400);
game_time_advance(30 * ONE_GAME_MINUTE);
set_sfall_global(SGVAR_CRAFT_DRUGS, 1);
display_msg(fixit_mstr(84));
display_msg(mstr_pbs_craft(84));
gfade_in(400);
Reply(1041);
NOption(g_mstr(202), Node999, 004);
Expand Down
2 changes: 1 addition & 1 deletion scripts_src/_pbs_craft/learn_craft_mom.h
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ procedure NodeCraft4 begin
gfade_out(400);
game_time_advance(18000);
set_sfall_global(SGVAR_CRAFT_FOOD, 1);
display_msg(fixit_mstr(88));
display_msg(mstr_pbs_craft(88));
gfade_in(400);
Reply(2021);
NOption(2023, Node013, 004);
Expand Down
2 changes: 1 addition & 1 deletion scripts_src/_pbs_craft/learn_craft_skeeter.h
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ procedure NodeCraft4 begin
gfade_out(400);
game_time_advance(18000);
set_sfall_global(SGVAR_CRAFT_AMMO, 1);
display_msg(fixit_mstr(86));
display_msg(mstr_pbs_craft(86));
gfade_in(400);
Reply(1041);
NOption(g_mstr(202), Node999, 004);
Expand Down
2 changes: 1 addition & 1 deletion scripts_src/_pbs_craft/learn_craft_smitty.h
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ procedure NodeCraft4 begin
gfade_out(400);
game_time_advance(18000);
set_sfall_global(SGVAR_CRAFT_EXPLOSIVES, 1);
display_msg(fixit_mstr(81));
display_msg(mstr_pbs_craft(81));
gfade_in(400);
Reply(721);
NOption(722, Node999, 004);
Expand Down
2 changes: 1 addition & 1 deletion scripts_src/_pbs_craft/learn_craft_val.h
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ procedure NodeCraft5 begin
gfade_out(400);
game_time_advance(18000);
set_sfall_global(SGVAR_CRAFT_ELECTRONICS, 1);
display_msg(fixit_mstr(85));
display_msg(mstr_pbs_craft(85));
gfade_in(400);
Reply(521);
BackOption(g_mstr(202), 004)
Expand Down
2 changes: 1 addition & 1 deletion scripts_src/_pbs_craft/learn_craft_vic.h
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ end
procedure NodeCraft4 begin
Reply(5105);
set_sfall_global(SGVAR_CRAFT_BLADES, 1);
display_msg(fixit_mstr(87));
display_msg(mstr_pbs_craft(87));
NOption(5106, NodeCraft5, 004);
//NOption(5130, Node110, 004);
end
Expand Down
2 changes: 1 addition & 1 deletion scripts_src/_pbs_headers/ecco_msg.h
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#ifndef ECCO_MSG_H
#define ECCO_MSG_H

#include "sfall/sfall.h"
#include "../sfall/sfall.h"

variable combat_msg_id;

Expand Down
2 changes: 1 addition & 1 deletion scripts_src/_pbs_main/gl_melee_gore_unlock.ssl
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ procedure deathanim2_handler begin

if (animID != oldAnimID) then begin
if (validate_critter_anim(target, animID)) then begin
debug_log("Triggering gory death animation for %s: %d", obj_name(target), animID);
debug_log_fmt("Triggering gory death animation for %s: %d", obj_name(target), animID);
set_sfall_return(animID);
set_sfall_arg(4, animID);
end else begin
Expand Down
2 changes: 1 addition & 1 deletion scripts_src/_pbs_main/gl_pbs_monster_parts.ssl
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ procedure drop_monster_parts(variable critter) begin
call add_item_pid(critter, PID_PBS_DEATH_CLAW);
if (get_sfall_global_int(SGVAR_CRAFT_DEATHCLAW) == false) then
if (is_success(roll_vs_skill(dude_obj, SKILL_REPAIR, 0))) then begin
display_msg(fixit_mstr(90));
display_msg(mstr_pbs_craft(90));
set_sfall_global(SGVAR_CRAFT_DEATHCLAW, true);
end
end
Expand Down
14 changes: 7 additions & 7 deletions scripts_src/_pbs_main/tests/gl_cheat_enemyspawner.ssl
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ variable enemy_types;

#define is_throwing_weapon_pid(pid) (weapon_attack_mode1(pid) == ATTACK_MODE_THROW)

procedure spawn_enemy(variable type, variable tile) begin
procedure spawn_enemy(variable type, variable tile := 0) begin
variable critter, pid, sid, weaponPid, weapon, ammoPid, stimpaks, female;
switch (type) begin
case ENEMY_ENCLAVE:
Expand Down Expand Up @@ -80,17 +80,17 @@ procedure spawn_enemy(variable type, variable tile) begin
return;
end

critter := create_object_sid(pid, tile, dude_elevation, sid);
critter := create_object_sid(pid, tile or tile_under_cursor, dude_elevation, sid);
if (weaponPid) then begin
weapon := add_items_pid(critter, weaponPid, 3 if is_throwing_weapon_pid(weaponPid) else 1);
//wield_obj_critter(critter, weapon);
ammoPid := get_proto_data(weaponPid, PROTO_WP_AMMO_PID);
if (ammoPid > 0) then
call add_items_pid(critter, ammoPid, random(1, 3));
if stimpaks then
call add_items_pid(critter, PID_STIMPAK, stimpaks);
wield_obj_critter(critter, weapon);
end
if stimpaks then
call add_items_pid(critter, PID_STIMPAK, stimpaks);
return critter;
end

Expand Down Expand Up @@ -124,16 +124,16 @@ procedure keypress_handler begin
call spawn_enemies_circle(ENEMY_FARMER, 2);
end
if (keyCode == DIK_6) then begin
variable crit := spawn_enemy(ENEMY_DEATHCLAW, tile_under_cursor);
variable crit := spawn_enemy(ENEMY_DEATHCLAW);
reg_anim_clear(crit);
reg_anim_begin();
reg_anim_obj_move_to_obj(crit, dude_obj, -1);
reg_anim_end();
end
if (keyCode == DIK_7) then
call spawn_enemy(ENEMY_ENCLAVE, tile_under_cursor);
call spawn_enemy(ENEMY_ENCLAVE);
if (keyCode == DIK_8) then
call spawn_enemy(ENEMY_THROWER, tile_under_cursor);
call spawn_enemy(ENEMY_MELEE);
if (keyCode == DIK_9) then
call spawn_enemies_circle(ENEMY_ALIEN, 1);
end
Expand Down
2 changes: 1 addition & 1 deletion scripts_src/arroyo/acmynoc.ssl
Original file line number Diff line number Diff line change
Expand Up @@ -467,7 +467,7 @@ procedure Node026 begin
gfade_out(600);
// by phobos2077: add blades schematics
set_sfall_global(SGVAR_CRAFT_BLADES, 1);
display_msg(fixit_mstr(87));
display_msg(mstr_pbs_craft(87));
gfade_in(600);

Reply(312);
Expand Down
2 changes: 1 addition & 1 deletion scripts_src/gecko/gcskeetr.ssl
Original file line number Diff line number Diff line change
Expand Up @@ -594,7 +594,7 @@ end
procedure Node021 begin
Reply(320);
set_sfall_global(SGVAR_CRAFT_TOOLS, 1); // pbs: unlock crafting of Super Tool Kit
display_msg(fixit_mstr(89));
display_msg(mstr_pbs_craft(89));
NOption(321,Node022,004);
end

Expand Down
2 changes: 1 addition & 1 deletion scripts_src/klamath/kctrapr.ssl
Original file line number Diff line number Diff line change
Expand Up @@ -369,7 +369,7 @@ procedure NodeCraft3 begin
Reply(537);

set_sfall_global(SGVAR_CRAFT_JACKET, 1);
display_msg(fixit_mstr(82));
display_msg(mstr_pbs_craft(82));
set_local_var(LVAR_Teacher, teacher_taught);
item_caps_adjust(dude_obj, -CRAFT_PRICE);

Expand Down
2 changes: 1 addition & 1 deletion scripts_src/vault15/bscomp1.ssl
Original file line number Diff line number Diff line change
Expand Up @@ -199,6 +199,6 @@ procedure NodeCraft1 begin
Reply(201);
set_sfall_global(SGVAR_CRAFT_ELECTRONICS, 1);
set_sfall_global(SGVAR_CRAFT_ELECTRONICS2, 1);
display_msg(fixit_mstr(85));
display_msg(mstr_pbs_craft(85));
ENDOPTION;
end

0 comments on commit d9bd8b3

Please sign in to comment.