Targetname
Targetname je osnovna Keyvalue dostupna u svim Source igrama.
Targetname (prevedeno: ime cilja) (također poznato jednostavno kao Name) je ime entiteta. Ciljno ime nije potrebno za postojanje entiteta, ali općenito mora biti prisutno da bi entitet igrao ulogu u I/O sustav .
Contents
Bilješke
- Entiteti također mogu biti meta njihovih classname (npr.
prop_dynamic
). - Imena ciljeva ne moraju biti jedinstvena, mogu se dijeliti (a unosi će se slati svakom). Duplicirani nazivi ciljeva prikazani su podebljanim fontom.
- Nazivi ciljeva ne mogu sadržavati
!
ili*
znakova (vidi dolje). - Nazivi ciljeva također ne mogu sadržavati
,
znakova ako namjeravate koristiti entitet kao nadređenog, jer se to koristi za postavljanje točke privitka .
Instance
- Instance može koristiti popravke imena prefiksa ili postfiksa i automatski će generirati prefiks ako nisu navedeni parametri.
- Prefiksi i postfiksi odvojeni su jednom crticom, npr. hall_a3-door_02.
- Postavljanje
@
simbol na početku naziva cilja (e.g. @exit_door) će zaobići popravak imenovanja za taj određeni entitet. Ako @exit_door i exit_door_relay bili dio instance s prefiksom Door_01, nazivi entiteta bili bi @exit_door i Door_01-exit_door_relay.
Događaji Igrača
U većini igara za više igrača, bilo kojem entitetu sa sljedećim imenima ciljeva bit će poslan unos Use kada se taj događaj dogodi.
game_playerdie
- Pali svaki put kadplayer
umre. Igrač koji je umro je!activator
.game_playerkill
- Pali svaki put kadplayer
ubije drugog igrača, ubojica je!activator
.game_playerjoin
- Pali svaki put kadplayer
pridruži igri, igrač koji se pridruži je!activator
.game_playerspawn
- Pali svaki put kad Pojavljuje seplayer
, s igračem koji se pojavljuje kao!activator
.Greška:
game_playerspawn
ne funkcionira u. [todo tested in?]
game_playerleave
- Pali se svaki put kadplayer
napusti igru.!activator
neće raditi u ovom slučaju, jer entitetplayer
više ne postoji.
![](/w/images/thumb/2/2e/Confirm.png/10px-Confirm.png)
![Tip.png](/w/images/thumb/4/45/Tip.png/9px-Tip.png)
![Team Fortress 2](/w/images/thumb/8/84/Tf2-16px.png/16px-Tf2-16px.png)
![Left 4 Dead 2](/w/images/thumb/8/8b/Icon-L4D2.png/16px-Icon-L4D2.png)
![English (en) English (en)](/w/images/3/37/Flag-en.png)
player_spawn
, player_death
i player_disconnect
.Podudaranje imena
Dok traži entitet, Source može koristiti nekoliko proširenih značajki podudaranja koje su korisne u raznim situacijama. Koriste se za ciljanje entiteta s nepoznatim ili djelomično poznatim imenom, a najčešće se koriste u I/O lancima, ali se također mogu koristiti u ključnim vrijednostima koje ciljaju entitete, poput filtra KV u filter_activator_name
/klasa
ili nadređeno polje entiteta. Proširene značajke su:
- zamjenski znakovi
- Source podržava
*
zamjenske znakove u ograničenoj mjeri. To znači da će traženje area1* odgovarati svim ciljevima koji počinju s area1, poput area1_portal ili area1_door, ali ne area2_door. Ovi zamjenski znakovi također su ograničeni na*
na kraju, što znači složenije zamjenske znakove poput *_door ili area*_door neće funkcionirati.Napomena:
Mapbase ima podršku za složeno podudaranje zamjenskih znakova poput *_door, area*_door, ar*a*_d*r,
?
zamjenski znakovi itd.Napomena:Hammer ne prepoznaje većinu ovih oblika podudaranja i vidjet će ih kao pogreške u uređivaču, ali će raditi u igri.
I/O sustav također podržava podudaranje naziva klase, koje se podudara prema nazivu klase entiteta, a ne prema nazivu cilja. Ovo koristi sve iste značajke proširenog podudaranja navedene gore. Neki drugi dijelovi Izvora podržavaju podudaranje naziva klase, ali to obično nije slučaj osim ako nije drugačije navedeno.
![Tip.png](/w/images/thumb/4/45/Tip.png/9px-Tip.png)
Ključne riječi
Sljedeći posebni nazivi ciljeva mogu se koristiti za dinamički odabir entiteta.
![Note.png](/w/images/thumb/c/cc/Note.png/10px-Note.png)
!activator
parametar, ali igračev unos SetFogController ne može procijeniti !activator/!caller
i treba koristiti ciljno ime željenog env_fog_controller-a.!activator
- Entitet koji je započeo trenutni I/O lanac.
- Ako igrač uđe u okidač koji aktivira
logic_relay
, igrač je!activator
izlaza releja. !self
- Entitet iz kojeg potječe trenutni unos.
- Ako igrač uđe u okidač koji aktivira logic_relay, relej je
!self
njegovih rezultata.
- Ako logic_relay aktivira
ForceSpawnAtEntityOrigin !self
env_entity_maker-u sOnTrigger
, entitet!self
je sam env_entity_maker.
!caller
- Entitet iz kojeg potječe trenutni izlaz.
- Ako igrač uđe u okidač koji aktivira logic_relay, okidač je
!caller
izlaza releja.
- Ako logic_relay aktivira
ForceSpawnAtEntityOrigin !caller
env_entity_maker-u sOnTrigger
, entitet!caller
je sam relej. - Za entitete kao što su
filter_activator_[xxxx]
ililogic_case
,!caller
odTestActivator
iliPickRandom/PickRandomShuffle
je samfilter_activator_[xxxx]
/logic_case
, a ne entitet koji je pokrenuo unos.
Napomena:Pojedinačni unosi mogu nadjačati entitet koji cilja
!caller
! Ovo se radi pomoćupoint_entity_finder
,math_counter
,logic_case
, i filter entiteta.!player
- Cilja igrača.
- U igrama za više igrača, cilja na prvog igrača koji se pridružio poslužitelju.
![Note.png](/w/images/thumb/c/cc/Note.png/10px-Note.png)
![Tip.png](/w/images/thumb/4/45/Tip.png/9px-Tip.png)
player
.![Icon-Bug.png](/w/images/thumb/b/b4/Icon-Bug.png/10px-Icon-Bug.png)
parentname
ne uspijevaju nadređeni pri pokretanju karte. [todo tested in?]Raditi okolo:Umjesto toga upotrijebite logic auto i
SetParent
unos.!player_blue
(samo u)
- U Portal 2 Coop, ovo cilja na ATLAS (igrač 1).
!player_orange
(samo u)
- U Portal 2 Coop, ovo cilja na P-Body (igrač 2).
!pvsplayer
- Prvi igrač pronađen u entitetu Set potencijalne vidljivosti . PVS koji se koristi preuzet je od entiteta koji pretražuje ili od aktivatora ako ne postoji entitet koji pretražuje. Ako niti ne postoji aktivator, vraća se prvi igrač u igri (tj.
!player
). !picker
- Prvi entitet ispod igračevog križića; uglavnom samo za otklanjanje pogrešaka. Entiteti bez kolizije mogu se odabrati samo ciljanjem na njihovo podrijetlo.
- U igrama za više igrača koristi se prvi igrač koji se pridružio poslužitelju.
FindNamedEntity Ključne riječi
Ove su ključne riječi dostupne samo u FindNamedEntity
, metodi specifičnoj za NPC-ove koju pretražuju samo određeni sustavi (npr. koreografirane scene) a "ne" stvarima poput I/O sustava.
- Napraviti:
Mapbase čini ovo dostupnim za I/O pretraživanja. Je li to slučaj u nekoj drugoj grani?
!speechtarget
- Entitet koji
!caller
traži zbogPogledaj glumca ili
Lice Glumac koreografski događaj.
!friend
!caller
najbliži prijateljski NPC. Ovo vraća igrača na NPC-ovima koji ne potječu odCAI_PlayerAlly
.!enemy
- Trenutni neprijatelj
!caller
.
Bilješke o ključnim riječima
- I
!activator
i!caller
mogu se razlikovati za određene unose, što ovisi o implementaciji svakog ulaza. U većini slučajeva to je na neželjeni način, poputGetValue
zamath_counter
. - Kada je "Ciljni entitet" izlaza prazan,
!self
je nije postavljeno na vrijednost!caller
. - Nazive ciljeva koji se koriste u polju nadjačavanja parametara izlaza procjenjuje entitet koji "prima" izlaz, a ne onaj koji ga šalje.
Vidi također
- Korisnički ulazi i izlazi
GetDebugName()
, za pristup ciljnom nazivu entiteta u C++.