Limiting equipable items in multiplayer

Users who are viewing this thread

I removed one of the try-loops, it somehow affected the default equipment for armouries and horses. After removing it, it was fine again. Here the code

Code:
  #script_multiplayer_set_default_item_selections_for_troop
  # Input: arg1 = troop_no
  # Output: none
  ("multiplayer_set_default_item_selections_for_troop",[
    (store_script_param, ":troop_no", 1),
    (multiplayer_get_my_player, ":my_player_no"),
    (call_script, "script_multiplayer_clear_player_selected_items", ":my_player_no"),
    (assign, ":num_item_class", 0),
    #(assign, ":cur_weapon_slot", 0),
    (troop_get_inventory_capacity, ":inv_cap", ":troop_no"),
    (try_for_range, ":i_slot", 0, ":inv_cap"),
      (troop_get_inventory_slot, ":item_id", ":troop_no", ":i_slot"),
      (ge, ":item_id", 0),
      (item_get_slot, ":item_class", ":item_id", slot_item_multiplayer_item_class),
      (try_begin), #retrieve number of range items
        (is_between, ":item_class", multi_item_class_type_arrow, multi_item_class_type_horse),
        (val_add, ":num_item_class", 1),
      (try_end),
      (try_begin),
        (is_between, ":item_class", multi_item_class_type_two_handed_sword, multi_item_class_type_small_shield),
        (store_add, ":selected_item_slot", slot_player_selected_item_indices_begin, 0),
        (player_set_slot, ":my_player_no", ":selected_item_slot", ":item_id"),
      (else_try),
        (is_between, ":item_class", multi_item_class_type_sword, multi_item_class_type_two_handed_sword),
        (store_add, ":selected_item_slot", slot_player_selected_item_indices_begin, 1),
        (player_set_slot, ":my_player_no", ":selected_item_slot", ":item_id"),
      (else_try), #Shields
        (is_between, ":item_class", multi_item_class_type_small_shield, multi_item_class_type_arrow),
        (store_add, ":selected_item_slot", slot_player_selected_item_indices_begin, 2),
        (player_set_slot, ":my_player_no", ":selected_item_slot", ":item_id"),
      (else_try),
        (is_between, ":item_class", multi_item_class_type_arrow, multi_item_class_type_horse),
        (store_add, ":selected_item_slot", slot_player_selected_item_indices_begin, 3),
        (player_set_slot, ":my_player_no", ":selected_item_slot", ":item_id"),
        (try_begin), #Arrows, Bolts, Throwables
          (is_between, ":item_class", multi_item_class_type_arrow, multi_item_class_type_horse),
          (store_add, ":selected_item_slot", slot_player_selected_item_indices_begin, 3),
          (player_set_slot, ":my_player_no", ":selected_item_slot", ":item_id"),
        (try_end),
        (try_begin), #EXTRA: Arrows, Bolts, Throwables
          (ge, ":num_item_class", 2),
          (is_between, ":item_class", multi_item_class_type_arrow, multi_item_class_type_horse),
          (neg|is_between, ":item_class", multi_item_class_type_small_shield, multi_item_class_type_arrow),
          (store_add, ":selected_item_slot", slot_player_selected_item_indices_begin, 2),
          (player_set_slot, ":my_player_no", ":selected_item_slot", ":item_id"),
        (try_end),
      (else_try),
        (is_between, ":item_class", multi_item_class_type_heads_begin, multi_item_class_type_heads_end),
        (store_add, ":selected_item_slot", slot_player_selected_item_indices_begin, 4),
        (player_set_slot, ":my_player_no", ":selected_item_slot", ":item_id"),
      (else_try),
        (is_between, ":item_class", multi_item_class_type_bodies_begin, multi_item_class_type_bodies_end),
        (store_add, ":selected_item_slot", slot_player_selected_item_indices_begin, 5),
        (player_set_slot, ":my_player_no", ":selected_item_slot", ":item_id"),
      (else_try),
        (is_between, ":item_class", multi_item_class_type_feet_begin, multi_item_class_type_feet_end),
        (store_add, ":selected_item_slot", slot_player_selected_item_indices_begin, 6),
        (player_set_slot, ":my_player_no", ":selected_item_slot", ":item_id"),
      (else_try),
        (is_between, ":item_class", multi_item_class_type_gloves_begin, multi_item_class_type_gloves_end),
        (store_add, ":selected_item_slot", slot_player_selected_item_indices_begin, 7),
        (player_set_slot, ":my_player_no", ":selected_item_slot", ":item_id"),
      (else_try),
        (is_between, ":item_class", multi_item_class_type_horses_begin, multi_item_class_type_horses_end),
        (eq, "$g_horses_are_avaliable", 1),
        (store_add, ":selected_item_slot", slot_player_selected_item_indices_begin, 8),
        (player_set_slot, ":my_player_no", ":selected_item_slot", ":item_id"),
      (try_end),
    (try_end),
    ]),
 
Back
Top Bottom