| Amiga - more personal than computer.mosfet from ppa.pl | |
|
|
| Guests Online: 1
No Members Online
Registered Members: 25
Unactivated Members: 12
Newest Member: mat3
| |
|
|
|
| W tym dzialę chciałbym się z wami nieco podzielić czymś ciekawym w q3, a mianowicie programowaniem w q3 ^^. Oczywiście mowa tu o skryptach w cfg, które mogą się przydać w czasie gry (i przydają). Niektóre sam napisałem, niektóre znalazłem w sieci. Zanim je jednak tu przedstawię, chciałbym nieco powiedzieć, jak sie takie skrypty pisze. Musimy najpierw poznać kilka komend:
/bind - przypisuje danemu klawiszowi na klawiaturze/myszy jakąś funkcję
/vstr - wykonuje zmienną (utworzoną przez nas komendę)
/seta - ustawia wartość zmiennnej (na stałe, zapisuje ją w cfg)
/set - usawia wartość zmiennej tymczasowo (tylko na aktualną sesję)
W zasadzie te 4 komendy wystarczają do napisania dowolnego skryptu :) (oczywiście należy znać działanie innych komend, tych na których się operuje)
W pisaniu skryptów warto znać jeszcze 2 komendy:
echo - wyświetla na ekranie/konsoli wpisany przez nas text (ale nie wysyła na serwer, text widzimy tylko my)
exec file.cfg - wykonuje instrukcje umieszczone w pliku file.cfg - przydatne jak mamy ogromne skrypty a nasz cfg ma prawie 16 kb
Budowa skryptu opera się na przedstawionym tutaj schemacie:
bind klawisz "vstr nazwa_zmiennej"
seta nazwa_zmiennej "vstr instrukcja1"
seta instrukcja1 "komenda; komenda; set nazwa_zmiennej vstr instrukcja2"
seta instrukcja2 "komenda; komenda; set nazwa_zmiennej vstr instrukcja1"
Gdzie:
nazwa_zmiennej - jest to nazwa głównego skryptu wykonującego
instrukcja1 - wartość podstawowa, pierwsza rzecz którą skrypt wykona
komenda - dowolna komenda q3
Działanie powyższego skryptu będzie następujące:
Po wciścięciu klawisza do którego zbindowaliśmy skrypt, zostanie wykonany ciąg komend zdeklarowany w instrukcja1, przy kolejnym wciśnięciu klawisza, bedzie wykonany ciąg komend instrukcja2, i tak w kółko, oczywiście możemy zdeklarować wiele takich ciągów instrukcji, gdy pojedyńczy skrypt ma wykonywać wiele rzeczy
-SKRYPTY-
Rocket jump (proszę go nie używać, skakanie na skrypcie jest lamerskie :])
bind SPACE "vstr rjump"
seta rjump "centerview; cl_pitchspeed 9999000; +lookdown; +attack; +moveup; wait 3; -lookdown; -attack; -moveup; wait 6; centerview; cl_pitchspeed 0"
Włącza/wyłącza giby
bind 4 "vstr gibsy"
seta gibsy "vstr bloodOn"
seta bloodOn "cg_gibs 1; echo ^3GIBSY ^2WLACZONE; set gibsy vstr bloodOff"
seta bloodOff "cg_gibs 0; echo ^3GIBSY ^1WYLACZONE; set gibsy vstr bloodOn"
Zmiana fov (field of view - pole widzenia)
bind KP_PLUS "vstr scr"
seta scr "vstr scr2"
seta scr6 "cg_fov 145; echo ^3FOV ^2145; set scr vstr scr1"
seta scr5 "cg_fov 135; echo ^3FOV ^2135; set scr vstr scr6"
seta scr4 "cg_fov 125; echo ^3FOV ^2125; set scr vstr scr5"
seta scr3 "cg_fov 115; echo ^3FOV ^2115; set scr vstr scr4"
seta scr2 "cg_fov 110; echo ^3FOV ^2110; set scr vstr scr3"
seta scr1 "cg_fov 105; echo ^3FOV ^2105; set scr vstr scr2"
Zmiana koloru przeciwnika, przydatny w nemesisie, który ma problemy z przeładowywaniem skórki podczas zmieny teamu, należy mieć pierw ustawiony /cg_enemymodel model/nms, np: /cg_enemymodel keel/nms
bind KP_INS "vstr enemy"
seta enemy "vstr enemy2"
seta enemy1 "cg_enemyColor 0x33FF00; set enemy vstr enemy2; echo ^3EnemyModel ^2GREEN"
seta enemy2 "cg_enemyColor 0xFFFF00; set enemy vstr enemy3; echo ^3EnemyModel ^3YELLOW"
seta enemy3 "cg_enemyColor 0xFF0033; set enemy vstr enemy4; echo ^3EnemyModel ^1RED"
seta enemy4 "cg_enemyColor 0xFFFFFF; set enemy vstr enemy1; echo ^3EnemyModel ^7WHITE"
włącza/wyłącza nagrywanie dema
bind F3 "vstr demrec"
seta demrec "vstr on"
seta off "stoprecord; g_syncronousclients 0; set demrec vstr on"
seta on "g_syncronousclients 1; record demko; set demrec vstr off"
Przewijanie dem w przód/spowolnienie
bind DOWNARROW "timescale 1"
bind LEFTARROW "vstr lowmotion"
bind RIGHTARROW "vstr fastmotion"
seta lowmotion "vstr sslow"
seta slow "timescale 0.5; echo ^2SLOW; set lowmotion vstr sslow"
seta sslow "timescale 0.001; echo ^2SUPER ^2SLOW; set lowmotion vstr slow"
seta fastmotion "vstr fast"
seta fast "timescale 2; echo ^2FAST ^2FORWARD; set fastmotion vstr sfast"
seta sfast "timescale 5; echo ^2SUPER ^2FAST; set fastmotion vstr ufast"
seta ufast "timescale 10; echo ^2ULTRA ^2FAST; set fastmotion vstr fast"
włącza/wyłącza dźwięk
bind KP_RIGHTARROW "vstr volume"
seta vol1 "s_volume 0.5; echo ^2 VOLUME ^2ON; set volume vstr vol0"
seta vol0 "s_volume 0; echo ^2 VOLUME ^2OFF; set volume vstr vol1"
seta volume "vstr vol0"
| |
|
|
|
on April 02 2007 18:46:46
W moim .cfg mam jeszcze fajne skrypciki na bindy typu :smile: i zmiane gamme w locie, o 20 demkach na jednym klawiszu nie wspomne. Ale to wszystko to bajery.. trzystopniowy rail-jump wymiata!! Musze wybrzebać moje stare skrypty, jakis czas temu sporo z tym kombinowałem, ale głównie dla siebie, a nie do szerszej publikacji.  |
on April 03 2007 09:11:50
jak będzioesz miał ochote subskrybnij mi je, chyba że planujesz zrobić u siebie remake mojego działu ;d |
on April 03 2007 18:24:28
duplikat mówisz... hehe jeśli już to będzie lepszy od "oryginału".   |
on April 03 2007 22:54:05
ta, już to widzę, takie "pro" >_> |
on April 04 2007 15:29:26
pro^^ hmm... nie.
PRO'NTO!! yeahh. |
| |
|
|
| Please Login to Post a Comment.
| |
|
|
| Rating is available to Members only.
Please login or register to vote.
No Ratings have been Posted.
| |
|
|
|
|
Not a member yet? Click here to register.
Forgotten your password? Request a new one here.
| |
|
|
|