нашол вот такой скрипт, наскоро перевёл, может быть коряво! но в этом ещё разбиратся надо! кто разберётся отпишите! должно помочь.
Scripts Миномета (Вы можете использовать это для катапульты, орудия или кое-чего).
#Вещи должны быть установлены перед битвой. (0, 0, ti_once,
[], [
(assign,"$action_in_mortar",0),
(assign,"$mortar_ammo",4), #Это - Вы ammo номер, type it one less.
]), #Mortar.
#Вход и оставление миномета
begin; (1, 0, 0, [(key_is_down,
key_e),(eq,"$action_in_mortar",0)], [ #Вы можете изменять(заменять) эту кнопку к другому.
См. header_triggers для referances.
(scene_prop_get_instance,":m_instance", "spr_mortar", 0),
(prop_instance_get_position,pos1,":m_instance"),
(get_player_agent_no,":player_agent"),
(agent_get_position,pos2,":player_agent"),
(get_distance_between_positions,":m_p_distance",pos1,pos2),
(try_begin),
(lt,":m_p_distance",300),
(assign,"$action_in_mortar",1),
(try_end), ]),
(0.1, 0, 0, [(eq,"$action_in_mortar",1)], [
(scene_prop_get_instance,":m_c_instance", "spr_mortar_crosshair",
0),
(prop_instance_get_position,pos1,":m_c_instance"),
(position_set_z_to_ground_level, pos1),
(prop_instance_set_position,":m_c_instance",pos1),
(assign,"$action_in_mortar",2),
(display_message,"str_mortar_is_ready"),
(mission_cam_set_mode,1),
(entry_point_get_position, pos2, 30), #Вы должны добавить вход
Пункт от редактирует режим. Вы будете смотреть от этого положения(позиции) точечных входа когда Вы
Введенный миномет. И делайте его entry_num 30
(mission_cam_set_position, pos2),
]), (1, 0, 0, [(key_is_down, key_e),], [
(mission_cam_set_mode,0),
(assign,"$action_in_mortar",0),
(scene_prop_get_instance,":m_c_instance", "spr_mortar_crosshair", 0),
(prop_instance_get_position,pos1,":m_c_instance"),
(position_move_z,pos1,20000),
(prop_instance_set_position,":m_c_instance",pos1),
]),
#entering and leaving mortar end*******************
#навигация
mortar begin; (0.1, 0, 0, [(key_is_down,
key_left),(eq,"$action_in_mortar",2),], [
(scene_prop_get_instance,":m_c_instance", "spr_mortar_crosshair", 0),
(prop_instance_get_position,pos1,":m_c_instance"),
(position_move_x,pos1,200), #После вашей попытки. Если некоторые вещи неправильно
Относительно координат. Пример: Вы подталкивающий(выдвигающий) право и его продвижение где-нибудь еще чем Право. Только изменитесь, это координирует. И попытка снова.
(position_set_z_to_ground_level, pos1),
(prop_instance_set_position,":m_c_instance",pos1),
]), (0.1, 0, 0, [(key_is_down,
key_right),(eq,"$action_in_mortar",2),], [
(scene_prop_get_instance,":m_c_instance", "spr_mortar_crosshair", 0),
(prop_instance_get_position,pos1,":m_c_instance"),
(position_move_x,pos1,-200),
(position_set_z_to_ground_level, pos1),
(prop_instance_set_position,":m_c_instance",pos1),
]), (0.1, 0, 0, [(key_is_down,
key_down),(eq,"$action_in_mortar",2),], [
(scene_prop_get_instance,":m_c_instance", "spr_mortar_crosshair", 0),
(prop_instance_get_position,pos1,":m_c_instance"),
(position_move_y,pos1,200),
(position_set_z_to_ground_level, pos1),
(prop_instance_set_position,":m_c_instance",pos1),
]), (0.1, 0, 0, [(key_is_down,
key_up),(eq,"$action_in_mortar",2),], [
(scene_prop_get_instance,":m_c_instance", "spr_mortar_crosshair", 0),
(prop_instance_get_position,pos1,":m_c_instance"),
(position_move_y,pos1,-200),
(position_set_z_to_ground_level, pos1),
(prop_instance_set_position,":m_c_instance",pos1),
]), #навигация миномёта
end*******************
#*******!:D (0.1, 0.5, 0, [(key_is_down,
key_numpad_0),], [ (try_begin),
(eq,"$action_in_mortar",2),
(assign,"$action_in_mortar",3),
(play_sound, "snd_mortar_missile"), #Вы должны назначить это и другой
sounds from module_sounds.
(else_try),
(eq,"$action_in_mortar",3),
(display_message,"str_mortar_isnt_ready"), #Вы должны назначить это и другой
messages from module_strings.py
(else_try),
(eq,"$action_in_mortar",4),
(display_message,"str_mortar_no_ammo"),
(try_end), ]), (0.1, 0.9,
0, [(eq,"$action_in_mortar",3),], [ # Вы можете изменяться 0.9 для различия
Звук. Быстро растите шум, начинающийся в 0.9 s. Я говорю относительно этого:
snd_mortar_missile
(scene_prop_get_instance,":m_c_instance", "spr_mortar_crosshair", 0),
(prop_instance_get_position,pos1,":m_c_instance"),
(particle_system_burst,"psys_village_fire_big",pos1,150),
#Вы можете изменять(заменять) это, чтобы курить или someting лучше при использовании этого кода для
Катапульта (particle_system_burst,
"psys_village_fire_smoke_big",pos1,300),
(assign, ":killed_bastards", 0),
(get_player_agent_no,":player_agent"),
(try_for_agents,":agents"),
(agent_is_alive, ":agents"),
(agent_get_position,pos2,":agents"),
(get_distance_between_positions,":boom_distance",pos1,pos2),
(try_begin),
(lt,":boom_distance",600),
(agent_set_hit_points,":agents",0,0),
(agent_deliver_damage_to_agent,":player_agent",":agents"),
(val_add, ":killed_bastards",
1), (try_end),
(try_end),
(assign, reg5, ":killed_bastards"),
(display_message,"str_mortar_shot"),
(position_move_z,pos1,10000),
(prop_instance_set_position,":m_c_instance",pos1),
]), (0.1, 5, 0, [(eq,"$action_in_mortar",3),],
[ (try_begin),
(eq,"$mortar_ammo",0),
(assign,"$action_in_mortar",4),
(else_try),
(assign,"$action_in_mortar",2),
(val_sub,"$mortar_ammo",1),
(display_message,"str_mortar_is_ready"),
(try_end), ]),
(0.1, 2, 0, [(eq,"$action_in_mortar",3),], [
(scene_prop_get_instance,":m_c_instance", "spr_mortar_crosshair",
0),
(prop_instance_get_position,pos1,":m_c_instance"),
(position_set_z_to_ground_level, pos1),
(prop_instance_animate_to_position,":m_c_instance",pos1,300),
]),
Так или иначе делать это как бросок способным валуном? Подобно этому поражает некоторые цели и прекращает катиться(прокручиваться) впоследствии. Не слишком много целей, когда это катится(прокручивается), но это прекращают делать любое повреждение(ущерб) после первых попаданий.
T не бросает ничто. И его создание очень большие повреждения(ущерба) на ai. Убийство их. Мой лучший счет - 27
Blood and smoke:
("game_blood", psf_billboard_3d
|psf_randomize_size|psf_randomize_rotation, "prt_mesh_blood_1",
800, 6.0, 3.5, 0.3, 0, 0,
#num_particles, life, damping, gravity_strength, turbulance_size,
turbulance_strength (0.0, 0.7), (0.7, 0.7),
#alpha keys (0.1, 0.7), (3,
0.6), #red keys (0.1, 0.7), (3,
0.6), #green keys (0.1, 0.7),
(3, 0.6), #blue keys (0.0,
0.015), (0.5, 0.3), #scale keys (0,
0.05, 0), #emit box
size (0, 1.5, 0.7),
#emit velocity 1.0,
#emit dir
randomness 20,
#rotation speed
0,
#rotation damping ),
("game_blood_2", psf_billboard_3d | psf_randomize_size|psf_randomize_rotation
, "prt_mesh_blood_3", 2000, 6.0, 3.5, 0.2, 0,
0, #num_particles, life, damping, gravity_strength,
turbulance_size, turbulance_strength (0.0, 0.25), (0.7,
0.1), #alpha keys (0.1, 0.7),
(3, 0.6), #red keys (0.1, 0.7), (3,
0.6), #green keys (0.1, 0.7),
(3, 0.6), #blue keys (0.0,
0.15), (0.5, 0.45), #scale keys
(0.01, 0.2, 0.01), #emit
box size (1.4, 1.4, 0.5),
#emit velocity
1.0,
#emit dir randomness 150,
#rotation speed 0,
#rotation
damping ),
("pistol_smoke", psf_billboard_3d, "prtcl_dust_a",
1200, 35, 0.3, 0, 60.0, 0.4, #num_particles, life,
damping, gravity_strength, turbulance_size, turbulance_strength
(0.0, 0.75), (1, 0), #alpha keys
(0.0, 0.7), (1, 0.4), #red keys
(0.0, 0.7),(1, 0.4), #green
keys (0.0, 0.7), (1, 0.4), #blue
keys (0, 1.5), (0.5, 11.0),
#scale keys (0.1, 0.1, 0.1),
#emit box size (0.5, 0.5, 0),
#emit velocity
0.5
#emit dir randomness
),
Мой первый реальный script любого вида, script ссоры паба, только для lulz.
dialogs;
[anyone,"start", [(is_between, "$g_talk_troop", drun_begin, drun_end)], "Yes, what do you want?", "dr_1",[]],
[anyone|plyr,"dr_1", [], "A fight!", "dr_2",[]],
[anyone|plyr,"dr_1", [], "Nothing. Sorry to trouble you.", "close_window",[]],
[anyone,"dr_2", [], "Oh yeah? You wanna piece of me?", "dr_3",[]],
[anyone|plyr,"dr_3", [], "Shut up and go back home, you drunk.", "dr_4",[]],
[anyone,"dr_4", [], "Damn you! I'll kill you!", "close_window",
[(set_party_battle_mode),
(try_for_agents, ":cur_agent"),
(agent_get_troop_id, ":cur_agent_troop", ":cur_agent"),
(eq, ":cur_agent_troop", "trp_drunk"),
(agent_set_team, ":cur_agent", 1),
(try_end),
(try_for_agents, ":cur_agent"),
(agent_get_troop_id, ":cur_agent_troop", ":cur_agent"),
(eq, ":cur_agent_troop", "trp_drunkard"),
(agent_set_team, ":cur_agent", 1),
(try_end),
(try_for_agents, ":cur_agent"),
(agent_get_troop_id, ":cur_agent_troop", ":cur_agent"),
(eq, ":cur_agent_troop", "trp_drunken"),
(agent_set_team, ":cur_agent", 1),
(try_end),
(try_for_agents, ":cur_agent"),
(agent_get_troop_id, ":cur_agent_troop", ":cur_agent"),
(eq, ":cur_agent_troop", "trp_runk"),
(agent_set_team, ":cur_agent", 1),
(try_end),
(try_for_agents, ":cur_agent"),
(agent_get_troop_id, ":cur_agent_troop", ":cur_agent"),
(eq, ":cur_agent_troop", "trp_pifflered"),
(agent_set_team, ":cur_agent", 1),
(try_end),
(try_for_agents, ":cur_agent"),
(agent_get_troop_id, ":cur_agent_troop", ":cur_agent"),
(eq, ":cur_agent_troop", "trp_pished"),
(agent_set_team, ":cur_agent", 1),
(try_end),
(try_for_agents, ":cur_agent"),
(agent_get_troop_id, ":cur_agent_troop", ":cur_agent"),
(eq, ":cur_agent_troop", "trp_beer"),
(agent_set_team, ":cur_agent", 1),
(try_end),
]],
consatants;
drun_begin = "trp_drunk"
drun_end = "trp_beer"