GTA-Center.com » Forum
http://www.gta-center.com/forums/

[GUIDA] Varie Guide
http://www.gta-center.com/forums/viewtopic.php?f=40&t=320
Pagina 1 di 1

Autore:  Angelo [ 18/11/2010, 0:21 ]
Oggetto del messaggio:  [GUIDA] Varie Guide

In questa, per principianti, vi spiegherò come creare alcuni script, iniziamo:

Come creare una TextDraw che cambia ogni 5 secondi

Prima di tutto creiamo due variabili in cima (una per indicare la TextDraw e l'altra per indicare la posizione)
e un array per settare la stringa della TextDraw

Codice:
new pos = -1;
new Text: testo;
new Stringa[128];


Poi in "OnGameModeInit" settiamo un timer che si ripeta ogni 5 secondi

P.S. se volete potete anche settare il colore della Textdraw, il font, ecc...

Codice:
SetTimer("TDChange", 5000, true);


Infine creiamo il callback "TDChange" dove creeremo l'intero codice che cambia la nostra TextDraw

Codice:
forward TDChange();
public TDChange()
{
    pos ++; // per far incrementare ogni 5 secondi la variabile "pos" di 1
    switch(pos)
    {
        case 0: TextDrawSetString(testo, "Prima Textdraw");
        case 1: TextDrawSetString(testo, "Seconda Textdraw");
        case 2: TextDrawSetString(testo, "Terza Textdraw");
        case 3: TextDrawSetString(testo, "Quarta Textdraw");
        case 4:
        {
            TextDrawSetString(testo, "Ultima Textdraw");
            pos = -1;
        }
        // ne potete mettere altre, l'importante è che nell'ultima TextDraw mettiate pos = -1
    }
}


Infine in OnPlayerConnect mettete il TextDrawShowForPlayer per mostrare la TextDraw

Creare uno script che fa spawnare il player dal punto in cui è morto

Prima di tutto creiamo in cima le Float che assumeranno il valore della posizione del player, una variabile che contenga l'interior, una per il
virtual world, e un'altro array per segnalare se il player è morto o no

Codice:
new Float: Pos[MAX_PLAYERS][4];
new Interior[MAX_PLAYERS], World[MAX_PLAYERS];
new bool:Morto[MAX_PLAYERS];


Poi In OnPlayerDeath mettiamo il codice che getterà ogni volta che morirai la posizione, l'angolo, l'interior e il Virtual world

GetPlayerPos(playerid, Pos[playerid][0], Pos[playerid][1], Pos[playerid][2]);
GetPlayerFacingAngle(playerid, Pos[playerid][3]);
GetPlayerInterior(playerid, Interior[playerid]);
GetPlayerVirtualWorld(playerid, World[playerid]);
Morto[playerid] = true;

E infine In OnPlayerSpawn il codice che setterà ogni volta che spawnerai la posizione, l'angolo, l'interior e il Virtual world

Codice:
if(Morto[playerid] == true)
{
    SetPlayerPos(playerid, Pos[playerid][0], Pos[playerid][1], Pos[playerid][2]);
    SetPlayerFacingAngle(playerid, Pos[playerid][3]);
    SetPlayerInterior(playerid, Interior[playerid]);
    SetPlayerVirtualWorld(playerid, World[playerid]);
    Morto[playerid] = false;
}   


Infine mettete in OnPlayerConnect

Codice:
Morto[playerid] = false;


Per indicare che quell'id abbia la variabile "Morto" false

Qua finisce la guida, se avete problemi aprite un topic nella sezione "Aiuto Scripting"

Autore:  Peppinux AKA Peppe_Stasu [ 18/11/2010, 15:00 ]
Oggetto del messaggio:  Re: [GUIDA] Varie Guide

Semplici ma belle guide! Magari sarebbe stato meglio creare un topic per ognuna così da rendere più facile la ricerca dell'utente. Comunque ottimo lavoro ;)

Autore:  Giovanni94m [ 18/11/2010, 15:33 ]
Oggetto del messaggio:  Re: [GUIDA] Varie Guide

si dovrebbe dare almeno un titolo adatto ad ogni discussione ed aggiornare la lista delle guide

Autore:  Angelo [ 18/11/2010, 19:13 ]
Oggetto del messaggio:  Re: [GUIDA] Varie Guide

la aggiorno io la lista visto che mazzei non si vede da molto ?

Autore:  barletheking [ 18/11/2010, 20:32 ]
Oggetto del messaggio:  Re: [GUIDA] Varie Guide

Secondo me questo topic devi aggiornarlo quando fai tutorial piccoli

Autore:  Angelo [ 18/11/2010, 20:35 ]
Oggetto del messaggio:  Re: [GUIDA] Varie Guide

sisi hai ragione, quando mi verranno in mentre altre guide modificherò questo topic ;)

Pagina 1 di 1 Tutti gli orari sono UTC + 1 ora [ ora legale ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/