Lieber Grand Theft Auto Fan,

wir freuen uns sehr, dass Du zu GTAvision.com gestoßen bist. Es scheint, als ob Dir diese Seite gefällt. Wir haben auch ein Forum und es würde uns sehr freuen, wenn Du an unserer Community teilnehmen würdest. Wir hoffen, dass wir Dich bald in unserem Forum sehen werden.

Dein GTAvision.com Team.
Zum Forum
Schließen

NewsSend NewsUploadGalleryForumRegister



#############


#############


#############


#############


#############


#############




#############


#############


#############



GTAvision.com
Das Nonstop-Rennen
:: GTAvision.com ::

:: Scripting - Multiplayer ::
Author: dödel Das Nonstop-Rennen
E-Mail: Write me a Mail
Kategorie: Scripting - Multiplayer
GTA-Serien: GTA San Andreas 
Description: Ein Tutorial, dass euch anhand eines Beispiels
erklärt, wie ihr ein Nonstop-Rennen scripten
könnt. Ihr findet hier das Script im Format
.pwn anstelle einer .pdf und könnt es gleich
compilen!


Download


Tutorial:

/*******************************************************************************
********************************************************************************
********************************************************************************
*
* Tutorial - "Wie scriptet man ein Nonstop-Rennen" by doedel
*
*
*
* Das Tutorial ist urheberrechtlich geschuetzt und darf weder kopiert,
* noch darf es ohne Erlaubnis geaendert und als seines weitergegeben werden.
*
* !!!IHR MACHT EUCH SONST STRAFBAR!!!
*
* Das Tutorial darf nur auf folgenden Seiten veroeffentlicht werden:
*
* http://www.gtavision.com & http://forum.gtavision.com
* Sowie weitere Webseiten vom GTAvision.com Team
* und/oder
* doedel.
*
*
*
*
* Fuer Fragen schreibt in unser Forum!
*
*
*
*
*
* Wer Rechtschreibfehler findet, darf sie behalten!
* Bei inhaltlichen Fragen bitte im Forum melden.
* http://forum.gtavision.com
*
*
*
* (C) 2007 by doedel
********************************************************************************
********************************************************************************
********************************************************************************
*******************************************************************************/


/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/
/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/
/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/


/*******************************************************************************
********************************************************************************
* ------------- HINWEIS -------------
* Ihr koennt sofort compilen und es ausprobieren.
* Es bedarf zum Testen keine Aenderungen
********************************************************************************
*******************************************************************************/


/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/
/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/
/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/
#include <a_samp>

/******************************************************************************/

#define CP1 0
#define CP2 1
#define CP3 2
#define CP4 3
#define CP5 4
#define CP6 5
#define CP7_Ziel 6

/*******************************************************************************
********************************************************************************
* Hier erstellen wir, wie es sich gehoert,
* die Checkpoints des zweiten Rennens
*
* Diese sollten natuerlich auch anders definiert werden
*
********************************************************************************
*******************************************************************************/

#define RACE2_CP1_Start 7
#define RACE2_CP2 8
#define RACE2_CP3 9
#define RACE2_CP4 10
#define RACE2_CP5 11
#define RACE2_CP6 12
#define RACE2_CP7 13
#define RACE2_CP8 14
#define RACE2_CP9 15
#define RACE2_CP10 16
#define RACE2_CP11 17
#define RACE2_CP12 18
#define RACE2_CP13 19
#define RACE2_CP14 20
#define RACE2_CP15 21
#define RACE2_CP16_Ziel 22

/*******************************************************************************
********************************************************************************
* Nun erstellen wir eine Variable, damit
* sich die Rennen abwechseln
* und damit man das laufende Rennen durch
* wiederholte Eingabe von /start nicht beenden kann
********************************************************************************
*******************************************************************************/

new raceticket;
new racestarted;

/******************************************************************************/

new rennen[MAX_PLAYERS];
new platz_1[MAX_PLAYER_NAME];
new platz_2[MAX_PLAYER_NAME];
new platz_3[MAX_PLAYER_NAME];
new string[256];
new cstring[256];
new position = 1;

new Countdownanzeige;
new Countdownkiller;
new kstring[10];

forward JetztAberSchnell();
forward Countdown();

/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/
/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/
/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/

main()
{
print("n--------------------------------------------");
print(" GTAvision Team - doedel");
print(" TUTORIAL");
print(" Wie scriptet man ein Nonstop-Rennen");
print(" Copyright by doedel");
print("--------------------------------------------n");
}

/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/
/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/
/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/

public OnGameModeInit()
{
SetGameModeText("[TUT] Gamemode: Nonstop-Race by doedel");
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
AddStaticVehicle(400,2029.6437,1344.4570,10.9125,180.5856, -1, -1);
AddStaticVehicle(400,2029.6437,1300.4570,10.9125,180.5856, -1, -1);
return 1;
}
/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/
/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/
/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/

public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/start", cmdtext, true, 6) == 0)
{

/*******************************************************************************
********************************************************************************
* Hier nutzen wir eine Ueberpruefung um festzustellen,
* ob bereits ein Rennen laeuft
********************************************************************************
*******************************************************************************/

if(racestarted == 1)
{
SendClientMessage(playerid, 0xAA3333AA, "Es laeuft bereits ein Rennen");
return 1;
}

/*******************************************************************************
********************************************************************************
* Sollte noch kein Rennen laufen, wird die Variable
* hiermit darauf eingestellt
********************************************************************************
*******************************************************************************/

racestarted = 1;

/*******************************************************************************
********************************************************************************
* Nun nutzen wir die vorhin erstellte Variable,
* um zu ueberpruefen welches Rennen gestartet werden soll
********************************************************************************
*******************************************************************************/

if(raceticket == 0)
{

/*******************************************************************************
********************************************************************************
* Jetzt wird die Variable so eingestellt,
* dass beim naechsten Mal auch das naechste Rennen gestartet wird
********************************************************************************
* Sollten noch Rennen folgen, so wird "raceticket++;" genutzt
********************************************************************************
*******************************************************************************/

raceticket++;


SendClientMessage(playerid,0xFF0000AA,"Check "Rennen":........OK");
SendClientMessage(playerid,0x00FF00AA,"CP_Start erstellt");
Countdownkiller = SetTimer("Countdown", 1000, true);
for(new i=0; i<MAX_PLAYERS ; i++)
{
SetPlayerRaceCheckpoint(i, 0, 2047.57, 1343.1572, 14.0, 2047.57, 1202.88, 14.0, 12.0);
rennen[i] =CP1;
}
return 1;
}
if(raceticket==1)
{

/*******************************************************************************
********************************************************************************
* Wenn wir beim letzten Rennen angekommen sind,
* sollten wir 'raceticket' wieder auf 0 stellen,
* damit sich alle Rennen auch wiederholen koennen
********************************************************************************
*******************************************************************************/

raceticket=0;


SendClientMessage(playerid,0xFF0000AA,"Check "Rennen 2":........OK");
SendClientMessage(playerid,0x00FF00AA,"RACE2_CP_Start erstellt");
Countdownkiller=SetTimer( "Countdown", 1000, true);
for(new i=0; i <MAX_PLAYERS; i++)
{
SetPlayerRaceCheckpoint(i, 0, 2048.2185, 1409.7046, 10.7642, 2056.4238, 1530.6763, 14.0, 12.0);
rennen[i] = RACE2_CP1_Start;
}
return 1;
}
}
return 0;
}

/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/
/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/
/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/

public OnPlayerEnterRaceCheckpoint(playerid)
{
switch (rennen[playerid])
{
case CP1:
{
SetPlayerRaceCheckpoint(playerid, 0, 2047.57, 1202.88, 14.0, 2137.57, 1072.88, 14.0, 12.0);
SendClientMessage(playerid,0x00FF00AA,"CP1 erstellt");
rennen[playerid]++;
format(cstring, sizeof(cstring), "CP: %d / 7", rennen[playerid]);
GameTextForPlayer(playerid, cstring, 1000, 3);
}
case CP2:
{
SetPlayerRaceCheckpoint(playerid, 0, 2137.57, 1072.88, 14.0, 2189.57, 1190.88, 14.0, 12.0);
SendClientMessage(playerid,0x00FF00AA,"CP2 erreicht");
rennen[playerid]++;
format(cstring, sizeof(cstring), "CP: %d / 7", rennen[playerid]);
GameTextForPlayer(playerid, cstring, 1000, 3);
}
case CP3:
{
SetPlayerRaceCheckpoint(playerid, 0, 2189.57, 1190.88, 14.0, 2225.57, 1220.88, 14.0, 12.0);
SendClientMessage(playerid,0x00FF00AA,"CP3 erreicht");
rennen[playerid]++;
format(cstring, sizeof(cstring), "CP: %d / 7", rennen[playerid]);
GameTextForPlayer(playerid, cstring, 1000, 3);
}
case CP4:
{
SetPlayerRaceCheckpoint(playerid, 0, 2225.57, 1220.888, 14.0, 2222.57, 1371.88, 14.0, 12.0);
SendClientMessage(playerid,0x00FF00AA,"CP4 erreicht");
rennen[playerid]++;
format(cstring, sizeof(cstring), "CP: %d / 7", rennen[playerid]);
GameTextForPlayer(playerid, cstring, 1000, 3);
}
case CP5:
{
SetPlayerRaceCheckpoint(playerid, 0, 2222.57, 1371.88, 14.0, 2057.2, 1371.88, 14.0, 12.0);
SendClientMessage(playerid,0x00FF00AA,"CP5 erreicht");
rennen[playerid]++;
format(cstring, sizeof(cstring), "CP: %d / 7", rennen[playerid]);
GameTextForPlayer(playerid, cstring, 1000, 3);
}
case CP6:
{
SetPlayerRaceCheckpoint(playerid, 1, 2057.2, 1371.88, 14.0, 2057.2, 1371.88,14.0, 12.0);
SendClientMessage(playerid,0x00FF00AA,"(CP6 erreicht) Komm, noch ein Checkpoint!");
rennen[playerid]++;
format(cstring, sizeof(cstring), "CP: %d / 7", rennen[playerid]);
GameTextForPlayer(playerid, cstring, 1000, 3);
}
case CP7_Ziel:
{
if(position == 1)
{
GivePlayerMoney(playerid, 10000);
GetPlayerName(playerid, platz_1,sizeof(platz_1));
SendClientMessageToAll(0x0022FFAA, "***************************************************");
format(string, sizeof(string), "Rennen beendet und gewonnen von: %s ",platz_1);
SendClientMessageToAll(0xFFF00FAA, string);
format(string, sizeof(string), "%s, dein Preis......$10000",platz_1);
SendClientMessageToAll(0xFFFF00AA, string);
SendClientMessageToAll(0x0022FFAA, "***************************************************");
}
if(position == 2)
{
GivePlayerMoney(playerid, 8000);
GetPlayerName(playerid, platz_2,sizeof(platz_2));
SendClientMessageToAll(0x0022FFAA, "***************************************************");
format(string, sizeof(string), "Zweiter wurde: %s ",platz_2);
SendClientMessageToAll(0xFFFF00AA, string);
format(string, sizeof(string), "%s, dein Preis......$8000",platz_2);
SendClientMessageToAll(0xFFFF00AA, string);
SendClientMessageToAll(0x0022FFAA, "***************************************************");
}
if(position == 3)
{
GivePlayerMoney(playerid, 5000);
GetPlayerName(playerid, platz_3,sizeof(platz_3));
SendClientMessageToAll(0x0022FFAA, "***************************************************");
format(string, sizeof(string), "Dritter ist geworden: %s ",platz_3);
SendClientMessageToAll(0xFFFF00AA, string);
format(string, sizeof(string), "%s, dein Preis......$5000",platz_3);
SendClientMessageToAll(0xFFFF00AA, string);
SendClientMessageToAll(0x0022FFAA, "***************************************************");
}
DisablePlayerRaceCheckpoint(playerid);
rennen[playerid] = 0;

/*******************************************************************************
********************************************************************************
* Damit der Timer nicht oefters gestartet wird,
* nutzen wir gleich die PositionsVariable
* um zu ueberpruefen, ob der Timer schon am Laufen ist
********************************************************************************
*******************************************************************************/

if(position == 1) SetTimer("JetztAberSchnell", 15000, 0);
position++;
}
case RACE2_CP1_Start:
{
SetPlayerRaceCheckpoint(playerid, 0, 2056.4238,1530.6763,10.7689, 2096.8386,1644.4875,10.7798, 12.0);
SendClientMessage(playerid,0x00FF00AA,"RACE2_CP1 erstellt");
rennen[playerid]++;

/*******************************************************************************
********************************************************************************
* Da wir hier bei Checkpoint 7 anfangen,
* rechnen wir immer -7, zur Anzeige
* bei welchem Checkpoint wir uns befinden
********************************************************************************
*******************************************************************************/

format(cstring, sizeof(cstring), "CP: %d / 16", rennen[playerid] -7);
GameTextForPlayer(playerid, cstring, 1000, 3);
}
case RACE2_CP2:
{
SetPlayerRaceCheckpoint(playerid, 0, 2096.8386,1644.4875,10.7798, 2109.6553,1718.2126,10.7798, 12.0);
SendClientMessage(playerid,0x00FF00AA,"RACE2_CP2 erreicht");
rennen[playerid]++;
format(cstring, sizeof(cstring), "CP: %d / 16", rennen[playerid] -7);
GameTextForPlayer(playerid, cstring, 1000, 3);
}
case RACE2_CP3:
{
SetPlayerRaceCheckpoint(playerid, 0, 2109.6553,1718.2126,10.7798, 1931.5707,1713.8005,10.7642, 12.0);
SendClientMessage(playerid,0x00FF00AA,"RACE2_CP3 erreicht");
rennen[playerid]++;
format(cstring, sizeof(cstring), "CP: %d / 16", rennen[playerid] -7);
GameTextForPlayer(playerid, cstring, 1000, 3);
}
case RACE2_CP4:
{
SetPlayerRaceCheckpoint(playerid, 0, 1931.5707,1713.8005,10.7642, 1627.7561,1713.2161,10.7641, 12.0);
SendClientMessage(playerid,0x00FF00AA,"RACE2_CP4 erreicht");
rennen[playerid]++;
format(cstring, sizeof(cstring), "CP: %d / 16", rennen[playerid] -7);
GameTextForPlayer(playerid, cstring, 1000, 3);
}
case RACE2_CP5:
{
SetPlayerRaceCheckpoint(playerid, 0, 1627.7561,1713.2161,10.7641, 1567.9694,1833.7341,10.9502, 12.0);
SendClientMessage(playerid,0x00FF00AA,"RACE2_CP5 erreicht");
rennen[playerid]++;
format(cstring, sizeof(cstring), "CP: %d / 16", rennen[playerid] -7);
GameTextForPlayer(playerid, cstring, 1000, 3);
}
case RACE2_CP6:
{
SetPlayerRaceCheckpoint(playerid, 0, 1567.9694,1833.7341,10.9502, 1349.3547,1875.8196,10.7642, 12.0);
SendClientMessage(playerid,0x00FF00AA,"RACE2_CP6 erreicht");
rennen[playerid]++;
format(cstring, sizeof(cstring), "CP: %d / 16", rennen[playerid] -7);
GameTextForPlayer(playerid, cstring, 1000, 3);
}
case RACE2_CP7:
{
SetPlayerRaceCheckpoint(playerid, 0, 1349.3547,1875.8196,10.7642, 1269.2195,1738.8813,9.0049, 12.0);
SendClientMessage(playerid,0x00FF00AA,"RACE2_CP7 erreicht");
rennen[playerid]++;
format(cstring, sizeof(cstring), "CP: %d / 16", rennen[playerid] -7);
GameTextForPlayer(playerid, cstring, 1000, 3);
}
case RACE2_CP8:
{
SetPlayerRaceCheckpoint(playerid, 0, 1269.2195,1738.8813,9.0049, 1217.5745,1266.1957,6.7974, 12.0);
SendClientMessage(playerid,0x00FF00AA,"RACE2_CP8 erreicht");
rennen[playerid]++;
format(cstring, sizeof(cstring), "CP: %d / 16", rennen[playerid] -7);
GameTextForPlayer(playerid, cstring, 1000, 3);
}
case RACE2_CP9:
{
SetPlayerRaceCheckpoint(playerid, 0, 1217.5745,1266.1957,6.7974, 1212.0414,1157.4858,6.9048, 12.0);
SendClientMessage(playerid,0x00FF00AA,"RACE2_CP9 erreicht");
rennen[playerid]++;
format(cstring, sizeof(cstring), "CP: %d / 16", rennen[playerid] -7);
GameTextForPlayer(playerid, cstring, 1000, 3);
}
case RACE2_CP10:
{
SetPlayerRaceCheckpoint(playerid, 0, 1212.0414,1157.4858,6.9048, 1312.9362,904.2525,17.5772, 12.0);
SendClientMessage(playerid,0x00FF00AA,"RACE2_CP10 erreicht");
rennen[playerid]++;
format(cstring, sizeof(cstring), "RACE2_CP: %d / 16", rennen[playerid] -7);
GameTextForPlayer(playerid, cstring, 1000, 3);
}
case RACE2_CP11:
{
SetPlayerRaceCheckpoint(playerid, 0, 1312.9362,904.2525,17.5772, 960.7844,744.2357,10.9104, 12.0);
SendClientMessage(playerid,0x00FF00AA,"RACE2_CP11 erreicht");
rennen[playerid]++;
format(cstring, sizeof(cstring), "CP: %d / 16", rennen[playerid] -7);
GameTextForPlayer(playerid, cstring, 1000, 3);
}
case RACE2_CP12:
{
SetPlayerRaceCheckpoint(playerid, 0, 960.7844,744.2357,10.9104, 903.8994,878.8412,13.4444, 12.0);
SendClientMessage(playerid,0x00FF00AA,"RACE2_CP12 erreicht");
rennen[playerid]++;
format(cstring, sizeof(cstring), "CP: %d / 16", rennen[playerid] -7);
GameTextForPlayer(playerid, cstring, 1000, 3);
}
case RACE2_CP13:
{
SetPlayerRaceCheckpoint(playerid, 0, 903.8994,878.8412,13.4444, 834.1436,1123.4434,30.1914, 12.0);
SendClientMessage(playerid,0x00FF00AA,"RACE2_CP13 erreicht");
rennen[playerid]++;
format(cstring, sizeof(cstring), "CP: %d / 16", rennen[playerid] -7);
GameTextForPlayer(playerid, cstring, 1000, 3);
}
case RACE2_CP14:
{
SetPlayerRaceCheckpoint(playerid, 0, 834.1436,1123.4434,30.1914, 799.7081,1636.8066,5.3624, 12.0);
SendClientMessage(playerid,0x00FF00AA,"RACE2_CP14 erreicht");
rennen[playerid]++;
format(cstring, sizeof(cstring), "CP: %d / 16", rennen[playerid] -7);
GameTextForPlayer(playerid, cstring, 1000, 3);
}
case RACE2_CP15:
{
SetPlayerRaceCheckpoint(playerid, 1, 799.7081,1636.8066,5.3624, 799.7081,1636.8066,5.3624, 18.0);
SendClientMessage(playerid,0x00FF00AA,"(RACE2_CP15 erreicht) Komm, noch ein Checkpoint!");
rennen[playerid]++;
format(cstring, sizeof(cstring), "CP: %d / 16", rennen[playerid] -7);
GameTextForPlayer(playerid, cstring, 1000, 3);
}
case RACE2_CP16_Ziel:
{
if(position == 1)
{
GivePlayerMoney(playerid, 10000);
GetPlayerName(playerid, platz_1,sizeof(platz_1));
SendClientMessageToAll(0x0022FFAA, "***************************************************");
format(string, sizeof(string), "Rennen beendet und gewonnen von: %s ",platz_1);
SendClientMessageToAll(0xFFF00FAA, string);
format(string, sizeof(string), "%s, dein Preis......$10000",platz_1);
SendClientMessageToAll(0xFFFF00AA, string);
SendClientMessageToAll(0x0022FFAA, "***************************************************");
}
if(position == 2)
{
GivePlayerMoney(playerid, 8000);
GetPlayerName(playerid, platz_2,sizeof(platz_2));
SendClientMessageToAll(0x0022FFAA, "***************************************************");
format(string, sizeof(string), "Zweiter wurde: %s ",platz_2);
SendClientMessageToAll(0xFFFF00AA, string);
format(string, sizeof(string), "%s, dein Preis......$8000",platz_2);
SendClientMessageToAll(0xFFFF00AA, string);
SendClientMessageToAll(0x0022FFAA, "***************************************************");
}
if(position == 3)
{
GivePlayerMoney(playerid, 5000);
GetPlayerName(playerid, platz_3,sizeof(platz_3));
SendClientMessageToAll(0x0022FFAA, "***************************************************");
format(string, sizeof(string), "Dritter ist geworden: %s ",platz_3);
SendClientMessageToAll(0xFFFF00AA, string);
format(string, sizeof(string), "%s, dein Preis......$5000",platz_3);
SendClientMessageToAll(0xFFFF00AA, string);
SendClientMessageToAll(0x0022FFAA, "***************************************************");
}

DisablePlayerRaceCheckpoint(playerid);
rennen[playerid] = 0;

/*******************************************************************************
* - Selbe Funktion wie beim ersten Ckeckpoint -
********************************************************************************
* Damit der Timer nicht oefters gestartet wird,
* nutzen wir gleich die PositionsVariable
* um zu ueberpruefen, ob der Timer schon am Laufen ist
*******************************************************************************/

if(position == 1) SetTimer("JetztAberSchnell", 15000, 0);
position++;
}

}
return 1;
}

public JetztAberSchnell()
{
for(new i=0;i < MAX_PLAYERS; i++)
{

/*******************************************************************************
********************************************************************************
* Damit man wieder ein Rennen starten kann,
* wird diese Variable, mit der geprueft wird, ob ein
* Rennen laeuft, wieder auf 0 gesetzt
********************************************************************************
*******************************************************************************/
racestarted = 0;

position = 1;
rennen[i] = 0;
DisablePlayerRaceCheckpoint(i);
GameTextForAll("Pech wer es nicht geschafft hat..vorbei!", 5000, 5);
}
}


/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/
/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/
/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/

public Countdown()
{
Countdownanzeige++;
if (Countdownanzeige >= 6)
{
Countdownanzeige = 0;
GameTextForAll("GoGoGo",999,5);
KillTimer(Countdownkiller);
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
TogglePlayerControllable(i,1);
}
}
}
else
{
format(kstring, sizeof(kstring), "%i", (6 - Countdownanzeige));
GameTextForAll(kstring,999,5);
for(new i=0; i <MAX_PLAYERS;i++)
{
if(IsPlayerConnected(i))
{
SetCameraBehindPlayer(i);
TogglePlayerControllable(i,0);
}
}
}
}

/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/
/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/
/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/

public OnPlayerSpawn(playerid)
{
SendClientMessage(playerid,0x00FF00AA,"Tippe /start fuer ein Rennen ein!");
return 1;
}

/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/
/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/
/*-----------||||||||||||||||||||||||||||||||||||||||||||||||||||||-----------*/

public OnGameModeExit()
{
return 1;
}

public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
return 1;
}


Mit Erlaubnis des Autors wurde dieses Tutorial auf http://www.GTAvision.com hochgeladen.
Weitere Tutorials rund um GTA findet ihr dort im Tutorialbereich.







Connect via IP
188.40.105.12:7777

> Link to the SA-MP Forum <



GTA IV
GTA IV: Niko lässt sichs gutgehen :D by HellyLoon
Niko lässt sichs gutgehen :D
by HellyLoon

.: submit :: gallery :.

GTAvision.com Gewusst?

 Lamborghini Huracán...
(GTA: San Andreas)
 Grand Theft Auto V Ve...
(Grand Theft Auto V)
 Noclip mod
(GTA: San Andreas)
 Camping Mobile Save H...
(GTA: San Andreas)
 GREEN LINE PAKISTAN
(GTA: San Andreas)
 GTA V PC Graphics-Per...
(GTA: San Andreas)
 GTA SA AK 47 Cursor F...
(GTA: San Andreas)
 Rockstar Games Window...
(GTA: San Andreas)
 GTA 100% with latest ...
(GTA: San Andreas)



Rockstar GamesTake-Two Interactive Deutschland
Script-Solution

User online: 36
User today: 2550
All Users: 27796278
All Clicks: 294400228