kings forum
Ciao Benvenuto nel Kings Forum Very Happy

Se non sei registrato registrati subito GTA San Andreas - Creare una missione Cleo 356433

Spero che ti troverai bene nel Forum!

L'amministratore,

Vito

GTA San Andreas - Creare una missione Cleo 984305

Unisciti al forum, è facile e veloce

kings forum
Ciao Benvenuto nel Kings Forum Very Happy

Se non sei registrato registrati subito GTA San Andreas - Creare una missione Cleo 356433

Spero che ti troverai bene nel Forum!

L'amministratore,

Vito

GTA San Andreas - Creare una missione Cleo 984305
kings forum
Vuoi reagire a questo messaggio? Crea un account in pochi click o accedi per continuare.
GTA San Andreas - Creare una missione Cleo 2mphkm0 Condividi

GTA San Andreas - Creare una missione Cleo

Andare in basso

GTA San Andreas - Creare una missione Cleo Empty GTA San Andreas - Creare una missione Cleo

Messaggio  fedec96 Ven Mag 21, 2010 12:36 am

In questa guida, spiegherò come creare delle semplici missioni, questa modalità è stata inserita nella mod BIGFOOT, del killer della moto sega e altri!
- Tool e programmi da usare:
• Sanny Buildier 3.0 --> http://gta-mod.blogspot.com/2009/05/sanny-builder.html
• Saper caricare modelli.
• Saper creare LABELS e THREAD.
• GTA San Andreas
- Iniziamo:
Apriamo SannyBuildier e creiamo un nuovo documento, all'inizio inseriamo la versione e il formato da compilare:
CODICE
{$VERSION 3.1.0027}
{$CLEO .cs}

Ora che abbiamo impostato il formato e la versione, creiamo un thread chiamato "MISSIONE":
CITAZIONE
thread 'MISSIONE'

Dentro questo thread, creiamo un label, questo label sarà la missione verà e propria, per questa missione "semplice" noi dobbiamo eseguire delle funzioni, controllare se il player è in un punto specifico, caricare i modelli e attori speciali, controllare se i modelli sono caricati, dare armi agli attori, creare segnalini sopra la loro testa e in fine impostare che loro ci vogliono uccidere.
CODICE
:MISSIONE
wait 1000
03A4: name_thread 'MISSIONE'
if and
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 2861.8618 -1887.3459 10.9339 radius 30.0 25.0 10.0
$ONMISSION == 0
else_jump @MISSIONE
023C: request_special_actor 'TENPEN' as 1
023C: request_special_actor 'SMOKEV' as 2
023C: request_special_actor 'BB' as 3
Model.Load(#AK47)
Model.Load(#COLT45)
Model.Load(#DESERT_EAGLE)
if and
Model.Available(#AK47)
Model.Available(#DESERT_EAGLE)
Model.Available(#COLT45)
023D: special_actor 1 loaded
023D: special_actor 2 loaded
023D: special_actor 3 loaded
wait 1000
009A: 1@ = create_actor 23 #SPECIAL01 at 2859.7527 -1917.4506 10.9324
009A: 2@ = create_actor 23 #SPECIAL02 at 2861.2815 -1917.2495 10.9335
009A: 3@ = create_actor 23 #SPECIAL03 at 2861.8311 -1915.5322 10.933
Actor.Angle(1@) = 272.1
Actor.Angle(2@) = 98.9
Actor.Angle(3@) = 169.0
4@ = Marker.CreateAboveActor(1@)
5@ = Marker.CreateAboveActor(2@)
6@ = Marker.CreateAboveActor(3@)
01B2: give_actor 1@ weapon 22 ammo 9999
01B2: give_actor 2@ weapon 30 ammo 9999
01B2: give_actor 3@ weapon 24 ammo 9999
05E2: AS_actor 1@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 2@ kill_actor $PLAYER_ACTOR
05E2: AS_actor 3@ kill_actor $PLAYER_ACTOR
$ONMISSION = 1
Model.Destroy(#AK47)
Model.Destroy(#DESERT_EAGLE)
Model.Destroy(#COLT45)

Analizziamo il codice:
wait 1000 : Attendiamo 1 secondo prima di eseguire le operazioni riportate sotto.
03A4: name_thread 'MISSIONE' : Diamo un nome al thread.
if and : Controlliamo se più cose sono accadute.
00FE: actor $PLAYER_ACTOR sphere 0 in_sphere 2861.8618 -1887.3459 10.9339 radius 30.0 25.0 10.0 : Controlliamo se il player è nei paraggi della posizione 2861.8618 -1887.3459 10.9339.
$ONMISSION == 0 : Controlliamo che il player non è già in missione.
else_jump @MISSIONE : Se il player non è nella posizione 2861.8618 -1887.3459 10.9339 oppure è in missione ritorna al label MISSIONE senza proseguire.
023C: request_special_actor 'TENPEN' as 1 : Richiediamo l'attore speciale TENPENNY.
023C: request_special_actor 'SMOKEV' as 2 : Richiediamo l'attore speciale BIG SMOKE.
023C: request_special_actor 'BB' as 3 : Richiediamo l'attore speciale BIGBEAR.
Model.Load(#AK47) : Carichiamo il modello AK47.
Model.Load(#COLT45) : Carichiamo il modello delle 9MM.
Model.Load(#DESERT_EAGLE) : Carichiamo il modello della Deagle.
if and : Controlliamo se i modelli e gli attori sono stati caricati.
Model.Available(#AK47) : Controlla se il modello Ak47 è stato caricato.
Model.Available(#DESERT_EAGLE) : Controlla se il modello della Deagle è stato caricato.
Model.Available(#COLT45) : Controlla se il modello COLT45 è stato caricato.
023D: special_actor 1 loaded : Controlla se l'attore numero 1 (TENPENNY) è stato caricato.
023D: special_actor 2 loaded : Controlla se l'attore numero 2 (BIG SMOKE) è stato caricato.
023D: special_actor 3 loaded : Controlla se l'attore numero 3 (BIG BEAR) è stato caricato.
else_jump @MISSIONE : Se non sono caricati i modelli ritorna al label MISSIONE, per farli ricaricare senza proseguire.
wait 1000 : Attendiamo 1 secondo prima di eseguire le funzioni riportate sotto.
009A: 1@ = create_actor 23 #SPECIAL01 at 2859.7527 -1917.4506 10.9324 : Creiamo l'attore TENPENNY
009A: 2@ = create_actor 23 #SPECIAL02 at 2861.2815 -1917.2495 10.9335 : Creiamo l'attore BIG SMOKE
009A: 3@ = create_actor 23 #SPECIAL03 at 2861.8311 -1915.5322 10.933 : Creiamo l'attore BIG BEAR
Actor.Angle(1@) = 272.1 : Impostiamo l'angolo di TENPENNY a 272
Actor.Angle(2@) = 98.9 : Impostiamo l'angolo di BIG SMOKE a 98
Actor.Angle(3@) = 169.0 : Impostiamo l'angolo di BIG BEAR a 169
4@ = Marker.CreateAboveActor(1@) : Creiamo un marker sulla testa dell'attore e sulla mappa.
5@ = Marker.CreateAboveActor(2@) : Creiamo un marker sulla testa dell'attore e sulla mappa.
6@ = Marker.CreateAboveActor(3@) : Creiamo un marker sulla testa dell'attore e sulla mappa.
01B2: give_actor 1@ weapon 22 ammo 9999 : Diamo la 9MM a TENPENNY con 9999 colpi.
01B2: give_actor 2@ weapon 30 ammo 9999 : Diamo l'AK47 a BIG SMOKE.
01B2: give_actor 3@ weapon 24 ammo 9999 : Diamo la Deagle a BIG BEAR.
05E2: AS_actor 1@ kill_actor $PLAYER_ACTOR : Impostiamo che TENPENNY uccida CJ.
05E2: AS_actor 2@ kill_actor $PLAYER_ACTOR : Impostiamo che BIGSMOKE uccida CJ.
05E2: AS_actor 3@ kill_actor $PLAYER_ACTOR : Impostiamo che BIG BEAR uccida CJ.
Questa era la base, da qui potete modificare tutto la vita degli attori, l'armatura, le armi e molte altre cose, ora arriviamo al punto che quando uccidiamo un attore il segnalino scompaia.
Creiamo 3 labels ognuno per ogni attore e controlliamo se l'attore è morto, altrimenti andiamo al label orginale e ricontrolliamo, se invece è morto disabilitiamo il segnalino e rimuoviamo l'attore ( morto ) dal gioco:
CODICE
:MISSIONE_TENPENNY
wait 150
if
Actor.Dead(1@)
else_jump @MISSIONE_TENPENNY
Actor.RemoveReferences(1@)
Marker.Disable(4@)

:MISSIONE_BIGSMOKE
wait 150
if
Actor.Dead(2@)
else_jump @MISSIONE_TENPENNY
Actor.RemoveReferences(2@)
Marker.Disable(5@)

:MISSIONE_BIGBEAR
wait 150
if
Actor.Dead(3@)
else_jump @MISSIONE_BIGBEAR
Actor.RemoveReferences(3@)
Marker.Disable(6@)

Ora che abbiamo fatto ciò ci restano solo 2 labels, la missione superata e la missione non superata, per farli creiamo 2 labels e nel primo lo chiamiamo MISSIONE_COMPIUTA, mentre l'altro MISSIONE_FALLITA.
Ora, per far che CJ superi la missione dovremmo controllare se TUTTI gli attori sono morti, e dargli una somma di denaro, di rispetto e far apparire il messaggio MISSION PASSED! con suono:
CODICE
:MISSIONE_COMPIUTA
wait 150
if and
Actor.Dead(1@)
Actor.Dead(2@)
Actor.Dead(3@)
else_jump @MISSIONE_COMPIUTA
Actor.RemoveReferences(1@)
Actor.RemoveReferences(2@)
Actor.RemoveReferences(3@)
Marker.Disable(4@)
Marker.Disable(5@)
Marker.Disable(6@)
01E3: show_text_1number_styled GXT 'M_PASSR' number 6 time 5000 style 1 // MISSION PASSED!~n~~w~RESPECT +
Player.Money($PLAYER_CHAR) += 10000
$ONMISSION = 0
0998: add_respect 6

In MISSIONE FALLITA invece, dobbiamo controllare se CJ è MORTO o arrestato, usiamo wasted_or_busted per verificarlo:
CODICE
:MISSIONE_FALLITA
wait 150
if
wasted_or_busted
else_jump @MISSIONE_FALLITA
$ONMISSION = 0
00BA: show_text_styled GXT 'M_FAIL' time 5000 style 1 // ~r~MISSION FAILED!

Ecco qui, la missione è stata creata! Per testarla andate nella zona Playa De Seville ( vicino al mare dove c'è la missione SWEET GIRLS ).

Fonte: http://gta-mod.blogspot.com/2009/05/guida-...i-missioni.html
fedec96
fedec96
Admin
Admin

Messaggi : 68
Punti : 115
Data d'iscrizione : 06.05.10
Età : 28
Località : Ferrara

http://vgc.forumfree.it/

Torna in alto Andare in basso

Torna in alto

- Argomenti simili

 
Permessi in questa sezione del forum:
Non puoi rispondere agli argomenti in questo forum.