OSP Code Combat Eagle Eye (Requires WSE)

Users who are viewing this thread

K700

Master Knight
This OSP allows shooter to follow the flight of the arrow / bolt / bullet / throwing weapon.

Requires WSE >= 4.1.0! http://forums.taleworlds.com/index.php/topic,324890.0.html

c55Ht6q.png
kzzTNXr.png
YBwj1g1.jpg
AhUgGi0.jpg

Code:
#Add to any ammo or throwing weapon

(ti_on_init_missile,
    [
        (try_begin),
		(neg|multiplayer_is_dedicated_server),
		(key_is_down, key_q),
			
		(store_trigger_param_1, ":agent_no"),
		(agent_get_player_id, ":player_no", ":agent_no"),
		(gt, ":player_no", 0),
		(player_is_active, ":player_no"),
		(multiplayer_get_my_player, ":my_player_no"),
		(eq, ":player_no", ":my_player_no"),
			
		(store_trigger_param, ":missile_no", 6),
		(gt, ":missile_no", 0),
		(assign, "$g_last_spawned_missile", ":missile_no"),
		(assign, "$g_last_eagle_eye_time", 0),
		(mission_cam_set_mode, 1),
	(try_end),	
    ])
Code:
("game_quick_start",
    [
	#Add this string
	(assign, "$g_last_spawned_missile", -1),
]),
Code:
(0, 0, 0, [(neg|multiplayer_is_dedicated_server),],
    [
	(store_mission_timer_a_msec, ":current_time"),

	(try_begin),
		(this_or_next|gt, "$g_last_spawned_missile", -1),
		(gt, "$g_last_eagle_eye_time", 0),
		(neg|key_is_down, key_q),
		(mission_cam_set_mode, 0),
		(assign, "$g_last_spawned_missile", -1),
		(assign, "$g_last_eagle_eye_time", 0),
	(try_end),
	(try_begin),
		(gt, "$g_last_spawned_missile", -1),
		(try_begin),
			(missile_is_valid, "$g_last_spawned_missile"),
			(missile_get_cur_position, pos0, "$g_last_spawned_missile"),	
			(position_move_y, pos0, -150),
				
			#use this code for fixed camera
			(position_get_rotation_around_y, ":angle", pos0),			
			(store_mul, ":double_angle", ":angle", 2),
			(val_sub, ":angle", ":double_angle"),
			(position_rotate_y, pos0, ":angle"),
				
			#use this code for free camera
			#(multiplayer_get_my_player, ":my_player_no"),
			#(player_get_agent_id, ":my_agent_no", ":my_player_no"),
			#(agent_get_look_position, pos1, ":my_agent_no"),	
			#(position_copy_rotation, pos0, pos1),
				
			(mission_cam_set_position, pos0),
		(else_try),
			(assign, "$g_last_spawned_missile", -1),
			(store_add, "$g_last_eagle_eye_time", ":current_time", 300),
		(try_end),
	(try_end),
	(try_begin),
		(gt, "$g_last_eagle_eye_time", 0),
		(gt, ":current_time", "$g_last_eagle_eye_time"),
		(mission_cam_set_mode, 0),
		(assign, "$g_last_eagle_eye_time", 0),
	(try_end),	
    ])
	
(ti_on_agent_killed_or_wounded, 0, 0, [(neg|multiplayer_is_dedicated_server),],
       [
         (store_trigger_param_1, ":dead_agent_no"),
	 (try_begin),
		(ge, ":dead_agent_no", 0),
		(agent_get_player_id, ":dead_player_no", ":dead_agent_no"),
		(gt, ":dead_player_no", 0),
		(player_is_active, ":dead_player_no"),
		(multiplayer_get_my_player, ":my_player_no"),
		(eq, ":dead_player_no", ":my_player_no"),
		(mission_cam_set_mode, 0),
		(assign, "$g_last_spawned_missile", -1),
		(assign, "$g_last_eagle_eye_time", 0),
	(try_end),	
	])
 
Back
Top Bottom