spawn de elemente noi
În acest articol vă voi spune cum să creați articole noi:
Pentru a începe să găsească fișierul items.ltx în folderul config / misc / și copia orice obiect, de exemplu, am luat:
[pâine]: identitate_imunități
GroupControlSection = spawn_group
discovery_dependency =
$ spawn = "produse alimentare și medicamente # 92; pâine"
; $ prefetch = 32
clasa = II_FOOD
cform = schelet
vizuale = arme # 92; crescute # 92; bred.ogf
description = enc_equipment_food_bread1
inv_name = Pâine
inv_name_short = Pâine
inv. greutate = 0,3; 0,2
inv_grid_width = 1
inv_grid_height = 1
inv_grid_x = 11
inv_grid_y = 9
cost = 20
attach_angle_offset = -0.287979, 1.560923, 1.544060
attach_position_offset = 0.096910, -0.013594, 0.107925
attach_bone_name = bip01_r_hand
auto_attach = false
// trebuie să fie șters după actualizare
bone_name = bip01_r_hand
position_offset = 0.0.0.0.0.0
angle_offset = 1.570790,1.570790,3.92699
; produs alimentar
eat_health = 0,05
eat_satiety = 0.2
eat_power = 0
eat_radiation = 0
wounds_heal_perc = 0
eat_portions_num = -1
; produs alimentar
slot = 4
animation_slot = 4
; muzul
hud = wpn_vodka_hud
Îi lipim copia în cele din urmă, schimbăm numele:
inv_name = Pâine
inv_name_short = Pâine
inv_name = test
inv_name_short = test
Și descrierea = enc_equipment_food_bread1 pentru description = enc_equipment_food_bread1_test
Și, de asemenea, "la voință":
eat_health = 0,05 eat_satiety = 0,2 eat_power = 0 eat_radiation = 0 wounds_heal_perc = 0 eat_portions_num = -1
Tot în lucrarea item.ltx se face, acum vom merge pentru a edita descriere, deschisă string_table_enc_equipment „Notepad“. Ce vedem acolo: toate descrierile și numele sunt scrise de etichete:
Nume în joc
Descriere în joc
Un subiect testat dezvoltat în laboratoarele de top-secret ale zonei
Salvăm. Asta e tot! Lucrarea principală este finalizată! Acum adăugați articolul la comercianți, de exemplu, Sidorovici.
Deschideți trade_trader din folderul config / misc (lucrați cu acesta este descris în detaliu în acest articol), scrieți:
Salvăm, începem jocul, comerțul cu Sidorovici și îl vedem cu două feluri de pâine: unul dintre ele este al nostru
Obiectele spawn prin db.script
[Referirea]
teorie
Astăzi vă voi spune cum să dormi, de exemplu, AK-74 la începutul jocului, fără a utiliza dialoguri! Dar, înainte de a învăța să executați funcții fără a utiliza dialoguri - mai întâi învățați cum să le numiți printr-o metodă convențională.
* [Spawn prin scenariu]
În primul rând, trebuie să decomprim db.script și acolo găsim funcția:
funcția add_actor (obj)
actor = obj
actor_proxy: net_spawn (obj)
add_obj (obj)
capăt
Să schimbăm această funcție. La noi ar trebui să se întâmple așa:
funcția add_actor (obj)
actor = obj
actor_proxy: net_spawn (obj)
add_obj (obj)
new_spawn.give_ak74 ()
capăt
new_spawn.script este numele scriptului în care va fi localizată funcția de spawn.
Creați un script new_spawn.script și scrieți o funcție acolo:
funcția give_ak74 ()
alife (): creați ( "wpn_ak74", db.actor:position (), db.actor:level_vertex_id (), db.actor:game_vertex_id (), db.actor:id ())
capăt
* Dmitri Shatrov (Fim @ n)
"Crearea unui radio de lucru"
1. În primul rând, în gamedata # 92; sunete # 92; characters_voice # 92; scenario # 92; creați un dosar, de exemplu, esc_mafon.
Și în directorul rezultat: gamedata # 92; sunete # 92; characters_voice # 92; scenario # 92; esc_mafon # 92; pune muzica numită day_music_1.ogg, day_music_2.ogg, etc. (va juca în după-amiaza). Și în același dosar, adăugați night_music_1.ogg, night_music_2.ogg. (se va juca pe timp de noapte).
2. În fișierul sound_theme.script (gamedata # 92; scripts # 92;) adăugați:
cod
ph_snd_themes [ "day_music"] = "characters_voice # 92; # 92; scenariul # 92, # 92, # 92 esc_mafon; # 92; day_music_2",
"characters_voice # 92; # 92; scenariul # 92; # 92; esc_mafon # 92; # 92; day_music_3";
"characters_voice # 92; # 92; scenariul # 92; # 92; esc_mafon # 92; # 92; day_music_4";
"characters_voice # 92; # 92; scenariul # 92; # 92; esc_mafon # 92; # 92; day_music_5";
"characters_voice # 92; # 92; scenariul # 92; # 92; esc_mafon # 92; # 92; day_music_6";
"characters_voice # 92; # 92; scenariul # 92; # 92; esc_mafon # 92; # 92; day_music_7";
"characters_voice # 92; # 92; scenariul # 92; # 92; esc_mafon # 92; # 92; day_music_8";
"characters_voice # 92; # 92; scenariul # 92; # 92; esc_mafon # 92; # 92; day_music_9";
"# 92 Characters_voice; # 92; # 92 scenariu, # 92, # 92 esc_mafon; # 92; day_music_10"
>
ph_snd_themes [ "night_music"] = "characters_voice # 92; # 92; scenariul # 92, # 92, # 92 esc_mafon; # 92; night_music_2",
"characters_voice # 92; # 92; scenariul # 92; # 92; esc_mafon # 92; # 92; night_music_3";
"characters_voice # 92; # 92; scenariul # 92; # 92; esc_mafon # 92; # 92; night_music_4";
"characters_voice # 92; # 92; scenariul # 92; # 92; esc_mafon # 92; # 92; night_music_5";
"characters_voice # 92; # 92; scenariul # 92; # 92; esc_mafon # 92; # 92; night_music_6";
"characters_voice # 92; # 92; scenariul # 92; # 92; esc_mafon # 92; # 92; night_music_7";
"characters_voice # 92; # 92; scenariul # 92; # 92; esc_mafon # 92; # 92; night_music_8";
"characters_voice # 92; # 92; scenariul # 92; # 92; esc_mafon # 92; # 92; night_music_9";
"characters_voice # 92; # 92; scenariul # 92; # 92; esc_mafon # 92; # 92; night_music_10"
>
Am adus până la 10 dosare. Puteți continua - depinde de câte melodii doriți să adăugați.
3. Despachetați toate.spăwn și în fișier alife_l01_escape.ltx adăugați la sfârșitul:
cod
[888]
; cse_abstract proprietăți
section_name = fizic_object
name = esc_mafon
poziție = -212.976898193359, -22.2855587005615, -127.408164978027
direcția = 0.2.40000009536743,0
; cse_alife_object proprietăți
game_vertex_id = 59
distanța = 0.400000005960464
level_vertex_id = 41277
object_flags = 0xffffff3a
custom_data = <
cfg = scripturi # 92; esc_mafon.ltx
END
; cse_visual proprietăți
visual_name = echipamente # 92; mafon
; cse_ph_skeleton proprietăți
skeleton_flags = 1
; cse_alife_object_physic properties
fizic_type = 0x3
masa = 10
fix_bones = link
4. Acum logica însăși. În script-urile # 92; # 92; creați fișierul esc_mafon.ltx și completați:
cod
[Logic]
activ = ph_sound @ zi
[ph_sound @ day]
snd = day_music
on_info = ph_sound @ noapte
[ph_sound @ noapte]
snd = night_music
on_info = ph_sound @ zi
fie:
cod
[Logic]
activ = ph_sound @ zi
[ph_sound @ day]
snd = day_music
on_signal = sound_end | ph_sound @ noapte
[ph_sound @ noapte]
snd = night_music
on_signal = sound_end | ph_sound @ day
În prima versiune, muzica de la zi la noapte, se va schimba imediat, ca noapte cade.
În cea de-a doua variantă, muzica va comuta și cu debutul nopții, dar piesa nu va fi întreruptă, dar va termina până la sfârșit. A doua opțiune, ca să spunem așa, va fi mai frumoasă.