Brian Turner
PAWN/PHP/SQL/MAP/SQUIRIEL
Hors ligne
GTAOnline Big Member

Messages: 431
|
 |
« le: 31 Mai 2010 à 18:22:32 » |
|
Bonjour, voila je suis débutant en pawn et pour m'entrainé je me suis lancer dans la création d'un GM de course, bref voici mon probleme : il était une fois, un débutant en pawn .... Quand quelqu'un se connecte sur mon serv(moi car je le test) ben sa m'affiche toujours le dernier checkpoint et quand on rentre dedans ben toutes les phrases des autres checkpoint sont écrite mais les autres checkpoint n'apparaisse pas. Voici un bou de code : <?php ... new Check1; new Check2; new Check3; new Check4;
public OnPlayerSpawn(playerid){ Check1 = SetPlayerCheckpoint(playerid, 2866.1811523438, -1659.9093017578, 10.524225234985, 8); Check2 = SetPlayerCheckpoint(playerid, 2882.18359375, -1187.7048339844, 10.524225234985, 8); Check3 = SetPlayerCheckpoint(playerid, 2886.9897460938, -662.28234863281, 11.524225234985, 8); Check4 = SetPlayerCheckpoint(playerid, 2712.0295420156, -264.76336669922, 28.524225234985, 8); return 1; }
public OnPlayerEnterCheckpoint(playerid) { if (Check1){ DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid, 2882.18359375, -1187.7048339844, 10.524225234985, 4); SendClientMessage(playerid,0xFFFF00AA, "> CheckPoint atteint, au suivant."); } if (Check2){ DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid, 2886.9897460938, -662.28234863281, 11.524225234985, 4); SendClientMessage(playerid,0xFFFF00AA, "> CheckPoint atteint, au suivant."); } if (Check3){ DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid, 2712.0295420156, -264.76336669922, 28.524225234985, 4); SendClientMessage(playerid,0xFFFF00AA, "> CheckPoint atteint, au suivant."); } if (Check4){ DisablePlayerCheckpoint(playerid); SendClientMessage(playerid,0xFFFF00AA, "> CheckPoint atteint, c'est fini."); } return 1; } Merci de votre aide.
|
|
|
|
« Dernière édition: 08 Juin 2010 à 07:50:46 par Brian Turner »
|
Journalisée
|
Momoto33127__________________________________________ [TRADUCTION][FS]Celular call 1.5 : Voir le poste[ADDON/INC]Motor System (/clef et /vsortir pour Gveh) : Voir le poste[FS]BanList (BlackListe) [Systeme de BAN] : Voir le poste
|
|
|
cristab
Hors ligne
Admin V.I.P
GTAOnline Legend

Messages: 7331
|
 |
« Répondre #1 le: 31 Mai 2010 à 18:37:14 » |
|
tu peu mettre qu'un seul CP en meme temps donc public OnPlayerSpawn(playerid) { Check1 = SetPlayerCheckpoint(playerid, 2866.1811523438, -1659.9093017578, 10.524225234985, 8);
return 1; }
|
|
|
|
|
Journalisée
|
|
|
|
Brian Turner
PAWN/PHP/SQL/MAP/SQUIRIEL
Hors ligne
GTAOnline Big Member

Messages: 431
|
 |
« Répondre #2 le: 31 Mai 2010 à 18:38:16 » |
|
Ok merci je vais essayer.
EDIT : Merci sa marche a merveille. Encore merci.
Double post A j'ai toujours un problem, des que je rentre dans le 2eme checkpoint sa me téléporte au 1er comment faire?
|
|
|
|
« Dernière édition: 31 Mai 2010 à 20:05:18 par Brian Turner »
|
Journalisée
|
Momoto33127__________________________________________ [TRADUCTION][FS]Celular call 1.5 : Voir le poste[ADDON/INC]Motor System (/clef et /vsortir pour Gveh) : Voir le poste[FS]BanList (BlackListe) [Systeme de BAN] : Voir le poste
|
|
|
Bayshore
Hors ligne
GTAOnline Addict

Messages: 898
|
 |
« Répondre #3 le: 31 Mai 2010 à 20:36:33 » |
|
Donnes nous ton code et on pourra peut-être t'aider.
|
|
|
|
|
Journalisée
|
|
|
|
Brian Turner
PAWN/PHP/SQL/MAP/SQUIRIEL
Hors ligne
GTAOnline Big Member

Messages: 431
|
 |
« Répondre #4 le: 31 Mai 2010 à 20:54:35 » |
|
Salut le code c'est celui du 1er post mais avec le OnPlayerSpawn modifier : <?php ... new Check1; new Check2; new Check3; new Check4;
public OnPlayerSpawn(playerid) { Check1 = SetPlayerCheckpoint(playerid, 2866.1811523438, -1659.9093017578, 10.524225234985, 8);
return 1; }
public OnPlayerEnterCheckpoint(playerid) { if (Check1){ DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid, 2882.18359375, -1187.7048339844, 10.524225234985, 4); SendClientMessage(playerid,0xFFFF00AA, "> CheckPoint atteint, au suivant."); } if (Check2){ DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid, 2886.9897460938, -662.28234863281, 11.524225234985, 4); SendClientMessage(playerid,0xFFFF00AA, "> CheckPoint atteint, au suivant."); } if (Check3){ DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid, 2712.0295420156, -264.76336669922, 28.524225234985, 4); SendClientMessage(playerid,0xFFFF00AA, "> CheckPoint atteint, au suivant."); } if (Check4){ DisablePlayerCheckpoint(playerid); SendClientMessage(playerid,0xFFFF00AA, "> CheckPoint atteint, c'est fini."); } return 1; }
|
|
|
|
|
Journalisée
|
Momoto33127__________________________________________ [TRADUCTION][FS]Celular call 1.5 : Voir le poste[ADDON/INC]Motor System (/clef et /vsortir pour Gveh) : Voir le poste[FS]BanList (BlackListe) [Systeme de BAN] : Voir le poste
|
|
|
cristab
Hors ligne
Admin V.I.P
GTAOnline Legend

Messages: 7331
|
 |
« Répondre #5 le: 31 Mai 2010 à 21:20:11 » |
|
je ne voit pas pourquoi sa te teleporte la dsl
|
|
|
|
|
Journalisée
|
|
|
|
Bayshore
Hors ligne
GTAOnline Addict

Messages: 898
|
 |
« Répondre #6 le: 01 Juin 2010 à 16:35:06 » |
|
Tu veux peut-être dire que le checkpoint est le premier non ? C'est normal avec ton ancien code, Check2,3,4 ne sont plus utilisés et valent 0. Check1 retourne je ne sais quelle valeur.
Pour que ça marche correctement il faut créer une variable unique (par exemple Check) et lui donner la valeur du checkpoint où tu passes puis vérifier cette valeur (au passage un switch serait plus approprié pour tes conditions).
|
|
|
|
|
Journalisée
|
|
|
|
S!m
Hors ligne
Moderateur
GTAOnline Fan Boy

Messages: 2260
|
 |
« Répondre #7 le: 01 Juin 2010 à 18:48:32 » |
|
Salut,
vous devriez savoir que les checkpoints n'ont pas d'ID (il n'y en a qu'un)
Il n,existe que 2 ou 3 façons de faire pour savoir quel checkpoint c'est:
- faire un test de position - un choisi les ID de ses checkpoints et une variable (1 par joueur svp) permet de savoir lequel est en montré (en gros quand tu fais SetPlayerCheckpoint tu change la valeur de la variable au cp correspondant) - tu t'installe un streamer de checkpoint qui lui te sortira des ID (parce qu'il a un système interne semblable au 2e point)
++Sim++
|
|
|
|
|
Journalisée
|
|
|
|
Brian Turner
PAWN/PHP/SQL/MAP/SQUIRIEL
Hors ligne
GTAOnline Big Member

Messages: 431
|
 |
« Répondre #8 le: 02 Juin 2010 à 16:52:54 » |
|
<?php ... if(PlayerToPoint(8, playerid,2886.9897460938, -662.28234863281, 11.524225234985)) { .... } sa peux être bon sa?
|
|
|
|
|
Journalisée
|
Momoto33127__________________________________________ [TRADUCTION][FS]Celular call 1.5 : Voir le poste[ADDON/INC]Motor System (/clef et /vsortir pour Gveh) : Voir le poste[FS]BanList (BlackListe) [Systeme de BAN] : Voir le poste
|
|
|
scott1
Hors ligne
GTAOnline Addict

Messages: 1462
|
 |
« Répondre #9 le: 02 Juin 2010 à 17:19:54 » |
|
oui
|
|
|
|
|
Journalisée
|
|
|
|
Hatomalis
Hors ligne
Grand Banditisme

OLOL KOM C DRAWL :hap:
Messages: 117
|
 |
« Répondre #10 le: 02 Juin 2010 à 17:53:07 » |
|
Moi j'ai un autre probleme depuis que j'ai changer les CP: E:\GTA San Andreas\filterscripts\DM1.pwn(26) : error 018: initialization data exceeds declared size Je ne comprend pas cette érreur. Voici l'endroit ou sa bloque: new Float:RSPAWN[5][3] = { {-1500.4679,855.2566,7.1875,155.1493}, {-1488.8596,827.5113,7.1875,127.2624}, {-1489.5624,798.7892,7.1853,85.2753}, {-1527.2998,790.7748,7.1805,332.1610}, {-1507.3282,826.0363,14.9413,89.0120}, };
Merci d'avance =)
|
|
|
|
|
Journalisée
|
 -
|
|
|
scott1
Hors ligne
GTAOnline Addict

Messages: 1462
|
 |
« Répondre #11 le: 02 Juin 2010 à 18:30:21 » |
|
new Float:RSPAWN[5][3] = { {-1500.4679,855.2566,7.1875,155.1493}, {-1488.8596,827.5113,7.1875,127.2624}, {-1489.5624,798.7892,7.1853,85.2753}, {-1527.2998,790.7748,7.1805,332.1610}, {-1507.3282,826.0363,14.9413,89.0120} }; l faut enlever la dernière virgule de la dernière ligne
|
|
|
|
|
Journalisée
|
|
|
|
Brian Turner
PAWN/PHP/SQL/MAP/SQUIRIEL
Hors ligne
GTAOnline Big Member

Messages: 431
|
 |
« Répondre #12 le: 02 Juin 2010 à 18:40:43 » |
|
Voila se que j'ai fait mais j'ai des erreurs : <?php ... forward PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z);
public OnPlayerEnterCheckpoint(playerid) { if (Check1) { new Infernus; DisablePlayerCheckpoint(playerid); Infernus = CreateVehicle(411,2866.1811523438, -1659.9093017578, 10.524225234985,200,1,1,5000); PutPlayerInVehicle(playerid,Infernus,0); SetPlayerCheckpoint(playerid, 2882.18359375, -1187.7048339844, 10.524225234985, 8); SendClientMessage(playerid,0xFFFF00AA, "> VOUS ETES SUR LA LIGNE DE DEPART, GOGOGO."); } else if(PlayerToPoint(8, playerid,2882.18359375, -1187.7048339844, 10.524225234985)) { DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid, 2886.9897460938, -662.28234863281, 11.524225234985, 8); SendClientMessage(playerid,0xFFFF00AA, "> CheckPoint atteint, au suivant.");
} else if(PlayerToPoint(8, playerid,2886.9897460938, -662.28234863281, 11.524225234985)) { DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid, 2712.0295420156, -264.76336669922, 28.524225234985, 8); SendClientMessage(playerid,0xFFFF00AA, "> CheckPoint atteint, au suivant."); } else if(PlayerToPoint(8, playerid,2712.0295420156, -264.76336669922, 28.524225234985)) { DisablePlayerCheckpoint(playerid); SendClientMessage(playerid,0xFFFF00AA, "> CheckPoint atteint, c'est fini."); } return 1; } C:\Program Files\Rockstar Games\GTA San Andreas\SERVEUR\gamemodes\gm1.pwn(181) : error 004: function "PlayerToPoint" is not implemented C:\Program Files\Rockstar Games\GTA San Andreas\SERVEUR\gamemodes\gm1.pwn(187) : error 004: function "PlayerToPoint" is not implemented C:\Program Files\Rockstar Games\GTA San Andreas\SERVEUR\gamemodes\gm1.pwn(192) : error 004: function "PlayerToPoint" is not implemented
|
|
|
|
|
Journalisée
|
Momoto33127__________________________________________ [TRADUCTION][FS]Celular call 1.5 : Voir le poste[ADDON/INC]Motor System (/clef et /vsortir pour Gveh) : Voir le poste[FS]BanList (BlackListe) [Systeme de BAN] : Voir le poste
|
|
|
Hatomalis
Hors ligne
Grand Banditisme

OLOL KOM C DRAWL :hap:
Messages: 117
|
 |
« Répondre #13 le: 02 Juin 2010 à 18:42:15 » |
|
Non se n'est pas sa non plus. new Float:RSPAWN[5][3] = { {-1500.4679,855.2566,7.1875,155.1493}, {-1488.8596,827.5113,7.1875,127.2624}, {-1489.5624,798.7892,7.1853,85.2753}, {-1527.2998,790.7748,7.1805,332.1610}, {-1507.3282,826.0363,14.9413,89.0120} }; Mais j'ai toujours cette érreur: E:\GTA San Andreas\filterscripts\DM1.pwn(26) : error 018: initialization data exceeds declared size Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
1 Error.
|
|
|
|
|
Journalisée
|
 -
|
|
|
Brian Turner
PAWN/PHP/SQL/MAP/SQUIRIEL
Hors ligne
GTAOnline Big Member

Messages: 431
|
 |
« Répondre #14 le: 02 Juin 2010 à 18:50:23 » |
|
Hatomalis essaye de changer [3] par [5] je sais pas xD essaye toujours.
|
|
|
|
|
Journalisée
|
Momoto33127__________________________________________ [TRADUCTION][FS]Celular call 1.5 : Voir le poste[ADDON/INC]Motor System (/clef et /vsortir pour Gveh) : Voir le poste[FS]BanList (BlackListe) [Systeme de BAN] : Voir le poste
|
|
|
|