Skočit na obsah

Sdělení! - Globální informace

Spuštěny nové servery. Více info >>ZDE<<
Po domluvě s klanem KaP jsme znovu zprovoznily společný TeamSpeak Server Připojit
4GF client >>ke stažení ZDE<<
Podpora 4GF a s tím nový účet>>více info ZDE<<

Vítejte na For Gamers Fusion

Vítejte na For Gamers Fusion, stejně jako většina on-line komunit, se musíte zaregistrovat pro přispívání nových témat, ale nebojte se je to jednoduchý proces, který vyžaduje od Vás minimální informace. Využijte okamžitě, Registrovat nebo Přihlásit.
  • Psát nová témata a odpovídat na ně
  • Přehled o nových tématech, která jsem nečetl(a)
  • Psaní si s přáteli na Live Chatu
  • Vytvořte si vlastní profil a spravujte nové přátelé a pište si soukromé PM
  • Stanete se členy herního portál 4GF.cz
Guest Message by DevFuse
 

A další scripty!

script

1 odpověď na toto téma

#1
blabla

    Recruit

  • Člen
  • 16 Příspěvků:
19
Offline
Rozhodl jsem se ,že sem hodím více skriptů aby jste to měli všechno hezky na kopě v jednom tématu.

Dobře..mapa je připravena na scripting ( viz. Jak připravit mapu na scripty).
Vytvoříme si v adresáři /raw/maps/mp soubor se jménem mp_jménomapy.gsc (např. mp_dr_prison nebo mp_farm)

Já využívám psaní scriptů do hlavního scriptu.Možná méňě přehledné,ale rozhodně jednoduší a snadno přístupné.

Takže..Jak už jsme se dozvěděli (návod na jednoduchy skript pro pohyb) musíme vložit do .gsc (což je textový soubor) následující:

Citovat

main()
{
maps\mp\_load::main();
game["allies"] = "sas";
game["axis"] = "opfor";
game["attackers"] = "axis";
game["defenders"] = "allies";
game["allies_soldiertype"] = "woodland";
game["axis_soldiertype"] = "woodland";

}


..tak a pod něj píšeme skripty:

např. tedy


Citovat

trap_4()
{
trig = getEnt( "trigger4", "targetname" );
brush = getEnt( "trap8", "targetname" );

trig waittill( "trigger", who );
trig delete();

brush moveZ( 250, 1 );
wait 5;
brush moveZ( -250, 1 );
}


Ale každý jednotlivý script MUSí být nasměrovaný v hlavním úseku nahoře!
A to uděláme následujícně:
přídáme řádek do hlavičky : thread trap_4();
takže hlavička nyní vypadá takhle:

Citovat

main()
{
maps\mp\_load::main();
game["allies"] = "sas";
game["axis"] = "opfor";
game["attackers"] = "axis";
game["defenders"] = "allies";
game["allies_soldiertype"] = "woodland";
game["axis_soldiertype"] = "woodland";
thread trap_4();

}

takhle můžete přidávat do main hlavičky kolik chcete skriptů..

Pokračujeme...

Předtím jsme měli move script..tedy pro pohyb předmětu po osách X,Y nebo Z.
Teď si přidáme rotate script..tedy script pro otáčení po těchto osách.

Citovat

trap_8()
{
trig = getEnt( "trigger8", "targetname" );
brush = getEnt( "trap12", "targetname" );

trig waittill( "trigger", who );
trig delete();

for( i = 0; i < 2; i++ )
{
brush rotateYaw( 512, 3 );
wait 3;
brush rotateYaw( -512, 3 );
wait 3;
}
}


// lze pouzit i : brush rotatePitch( 512, 3);
A zase...trigger8 je trigger(spouštěč) a trap12 je jméno brushe(objektu)
přidáme řádek do hlavičky ..
thread trap_8();

A teď...co když se rozhodnu ,že chci aby byl hráč freeznutý.Tedy bez hnutí.
Je to naprosto jednoduché.Může to vypadat třeba takto:


Citovat

freezing()
{
trig = getEnt("freeze", "targetname");
trig waittill("trigger", player);
trig delete();
player iprintlnbold("^5 You are freeze now!");
player freezeControls( true );
wait 8;
player freezeControls( false );

}

tenhle script nám říká že pokud hráč vstoupí do triggeru se jménem freeze tak se mu před obrazovkou napíše modrý nápis: You are freeze now! (tedy teď jsi znehybněný)

Citovat

player freezeControls( true );
to nám říká že ho to tedy freezne

Citovat

wait 8;
tedy čekací doba než ho to znovu pustí,samozřejmě lze upravovat.

Citovat

player freezeControls( false );
hráč se může znovu hýbat!
NEZAPOMEŇTE POJMENOVAT V HLAVIČCE!
thread freezing();

Do tohoto tématu budu časem připisovat další scripty takže ho nezapomeňte sledovat a byl bych rád kdyby ho některý z našich milovaných adminů přišpendlil :-) Děkuji :)

Příspěvek upravil blabla: 4.04.2012 - 16:59


#2
Memi

    Recruit

  • Holky :)
  • 3 Příspěvků:
7
Offline
Jej moc děkuji, do budoucna se to určitě bude hodit. Skvělý nápad, to sem sepsat. :)





1 uživatelů si čte toto téma

0 členů, 1 návětěvníků, 0 anonymních