Edit
the latest working code;
http://forums.taleworlds.com/index.php/topic,228997.msg5515692.html#msg5515692
Hi guys.
I wrote this sprinting code for warband.
It works in singleplayer only and now I want to set it up for multiplayer.
I know that I need a server- and/or client event for this, but I dont know how to write it for this code.
module_constants
module_mission_templates
The sprinting should work for singleplayer and multiplayer.
Does anyone know how to write the server-/client-event for this
the latest working code;
http://forums.taleworlds.com/index.php/topic,228997.msg5515692.html#msg5515692
Hi guys.
I wrote this sprinting code for warband.
It works in singleplayer only and now I want to set it up for multiplayer.
I know that I need a server- and/or client event for this, but I dont know how to write it for this code.
module_constants
Code:
slot_agent_sprint_time = 27
slot_agent_sprint_mode = 28
Code:
#sprinting
sprint_limiter = (
0, 0, 1,
[
(this_or_next|multiplayer_is_server),
(neg|game_in_multiplayer_mode),
(game_key_is_down, gk_move_forward),
(game_key_clicked, gk_crouch),
(get_player_agent_no, ":player_agent"),
(agent_is_alive,":player_agent"),
(agent_is_human, ":player_agent"),
(agent_get_horse, ":horse", ":player_agent"),
(try_begin),
(le, ":horse", 0),
(agent_get_wielded_item, ":weapon_r", ":player_agent", 0),#right hand
(le, ":weapon_r", 0),
(agent_get_wielded_item, ":weapon_l", ":player_agent", 1),#left hand
(le, ":weapon_l", 0),
(agent_slot_eq, ":player_agent", slot_agent_sprint_time, 0),
(agent_set_slot, ":player_agent", slot_agent_sprint_time, 1),
(agent_set_slot, ":player_agent", slot_agent_sprint_mode, 1),
(agent_get_troop_id, ":sprint_troop", ":player_agent"),
(gt,":sprint_troop",-1),
(store_skill_level, ":athletics", "skl_athletics", ":sprint_troop"),
(val_mul, ":athletics", 2),
(store_sub, ":speed", 200, ":athletics"),
(agent_set_speed_modifier, ":player_agent", ":speed"),
(try_end),
], [])
sprint_time = (
1, 0, 0,
[
(this_or_next|multiplayer_is_server),
(neg|game_in_multiplayer_mode),
(try_for_agents,":agent"),
(neg|agent_is_non_player, ":agent"),
(agent_is_alive,":agent"),
(agent_get_horse, ":horse", ":agent"),
(try_begin),
(le, ":horse", 0),
(agent_get_slot, ":time", ":agent", slot_agent_sprint_time),
(ge, ":time", 1),
(agent_get_wielded_item, ":weapon_r", ":agent", 0),#right hand
(agent_get_wielded_item, ":weapon_l", ":agent", 1),#left hand
(assign, ":lower_time", 0),
(try_begin),
(agent_slot_eq, ":agent", slot_agent_sprint_mode, 1),
(le, ":weapon_r", 0),
(le, ":weapon_l", 0),
(game_key_is_down, gk_move_forward),
(game_key_is_down, gk_crouch),
(val_add, ":time", 2),#1/2 sec
(else_try),
(assign, ":lower_time", 1),
(try_end),
(val_min, ":time", 31),
(agent_set_slot, ":agent", slot_agent_sprint_time, ":time"),
(try_begin),
(gt, ":time", 30),#sprint time = 1/2
(assign, ":lower_time", 1),
(try_end),
(try_begin),
(eq, ":lower_time", 1),
(agent_set_speed_modifier, ":agent", 100),
(agent_get_slot, ":time", ":agent", slot_agent_sprint_time),
(val_sub, ":time", 1),
(val_max, ":time", 0),
(agent_set_slot, ":agent", slot_agent_sprint_time, ":time"),
(agent_set_slot, ":agent", slot_agent_sprint_mode, 0),
(try_end),
(try_end),
(try_end),
], [])
Does anyone know how to write the server-/client-event for this