KILLIAN.ssl import variable Killian_ptr; map_enter_p_proc Killian_ptr := self_obj; talk_p_proc if ((map_var(5) == 1) and (local_var(7) == 0) and (global_var(GVAR_HIRED_BY_GIZMO) == 0)) then begin LVar1 := create_object_sid(16777528, 0, 0, SCRIPT_KENJI); GVar9 := create_object_sid(10, 0, 0, -1); add_obj_to_inven(LVar1, GVar9); critter_add_trait(LVar1, 1, 6, 13); critter_add_trait(LVar1, 1, 5, 1); critter_attempt_placement(LVar1, 28283, 0); set_map_var(5, 2); end KENJI.ssl import variable Killian_ptr; procedure critter_p_proc begin if (tile_distance(tile_num(self_obj), 26281) > 3) then begin animate_move_obj_to_tile(self_obj, 26281, ANIMATE_WALK); end else begin if (obj_on_screen(self_obj)) then begin float_msg(self_obj, message_str(SCRIPT_KENJI, 103), FLOAT_MSG_RED); attack_complex(Killian_ptr, 0, 1, 0, 0, 30000, 0, 0); end end end
Hmm... I can't find similar procedures for spawning and equipping Blades during their invasion on Boneyard - any idea in which script they are?
Look scripts beginning on LA LAADYTUM.ssl LABLADES.ssl LAADYTUM.ssl export variable InBladePtr1; export variable InBladePtr2; export variable InBladePtr3; export variable InBladePtr4; export variable InBladePtr5; export variable InBladePtr6; export variable InBladePtr7; export variable InBladePtr8; procedure map_update_p_proc begin if (elevation(dude_obj) == 1) then begin call Darkness; end else begin call Lighting; end call add_party; if ((global_var(GVAR_BLADES) == 9103) and (map_var(2) == 0) and (global_var(GVAR_WATER_CHIP_9) == 1)) then begin call AddInBlades; gfade_in(600); end else begin if ((global_var(GVAR_BLADES) == 9104) and (map_var(2) == 0)) then begin set_map_var(2, 1); kill_critter(JonPtr, 0); kill_critter_type(16777216 + 3, 0); kill_critter_type(16777216 + 27, 0); kill_critter_type(16777216 + 36, 0); kill_critter_type(16777216 + 112, 0); kill_critter_type(16777216 + 215, 0); kill_critter_type(16777216 + 244, 0); kill_critter_type(16777216 + 245, 0); kill_critter_type(16777216 + 246, 0); kill_critter_type(16777216 + 247, 0); kill_critter_type(16777216 + 248, 0); kill_critter_type(16777216 + 249, 0); kill_critter_type(16777216 + 250, 0); kill_critter_type(16777216 + 251, 0); kill_critter_type(16777216 + 252, 0); kill_critter_type(16777216 + 253, 0); kill_critter_type(16777216 + 254, 0); kill_critter_type(16777216 + 255, 0); kill_critter_type(16777216 + 256, 0); kill_critter_type(16777216 + 257, 0); kill_critter_type(16777216 + 258, 0); kill_critter_type(16777216 + 259, 0); kill_critter_type(16777216 + 260, 0); kill_critter_type(16777216 + 261, 0); kill_critter_type(16777216 + 262, 0); kill_critter_type(16777216 + 263, 0); critter_attempt_placement(RazorPtr, 12700, 0); set_global_var(GVAR_BLADES, 2); set_global_var(GVAR_PLAYER_REPUTATION, global_var(GVAR_PLAYER_REPUTATION) + 2); display_msg(message_str(SCRIPT_GENCHAT, 103) + 2000 + message_str(SCRIPT_GENCHAT, 104)); give_exp_points(2000); end else begin if ((map_var(1) == 0) and (global_var(GVAR_BLADES) == 9103)) then begin gfade_out(600); kill_critter_type(16777216 + 268, 0); critter_attempt_placement(RazorPtr, 12700, 0); set_global_var(GVAR_BLADES, 2); set_global_var(GVAR_MAKE_ANTIDOTE_3, 1); set_global_var(GVAR_PLAYER_REPUTATION, global_var(GVAR_PLAYER_REPUTATION) + 2); display_msg(message_str(SCRIPT_GENCHAT, 103) + 2000 + message_str(SCRIPT_GENCHAT, 104)); give_exp_points(2000); gfade_in(600); end else begin if ((map_var(1) == 0) and (global_var(GVAR_BLADES) != 2) and (global_var(GVAR_MAKE_ANTIDOTE_2) == 1)) then begin set_global_var(GVAR_BLADES, 2); set_global_var(GVAR_MAKE_ANTIDOTE_1, 1); end end end end end procedure AddInBlades begin set_map_var(2, 1); critter_attempt_placement(InBladePtr1, 9702, 0); critter_attempt_placement(InBladePtr2, 9700, 0); critter_attempt_placement(InBladePtr3, 9698, 0); critter_attempt_placement(InBladePtr4, 9895, 0); critter_attempt_placement(InBladePtr5, 9696, 0); critter_attempt_placement(InBladePtr6, 26717, 0); critter_attempt_placement(InBladePtr7, 26711, 0); critter_attempt_placement(InBladePtr8, 24492, 0); end LABLADES.ssl export variable InBladePtr1; export variable InBladePtr2; export variable InBladePtr3; export variable InBladePtr4; export variable InBladePtr5;
I've seen them. Am I missing something or they don't have the equipment part? Is it hardcoded or something?
That's because Blades are already placed on level 1 of the map. AddInBlades procedure in map script just moves them to level 0.