GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: Paradize le 23 Décembre 2009, 11:19:04

Titre: erreur
Posté par: Paradize le 23 Décembre 2009, 11:19:04
Citer
D:\_FR__G~1\GAMEMO~1\Paradize.pwn(2890) : error 017: undefined symbol "cx"
Pawn compiler 3.2.3664           Copyright (c) 1997-2006, ITB CompuPhase


1 Error.

J'ai cette erreur à l'ajout de mon auto école...
Titre: Re : erreur
Posté par: minimicro le 23 Décembre 2009, 11:25:16
Ca veut dire que Cx n'est pas defini.

Il faut que tu le definisse,

new cx;   ou, si c'est pour une position    new Float:cx;  
Titre: Re : erreur
Posté par: Paradize le 23 Décembre 2009, 11:28:50
Merci :)
Titre: Re : erreur
Posté par: minimicro le 23 Décembre 2009, 11:32:46
A parce qu'elle doivent deja exister.

Remplace cx, cy, et cz par cX, cY et cZ, la ou tu l'utilise pour ton auto école, et pense, a bien les définir, au debut de la fonction new Float:cX, Float:cY, Float:cZ;
Titre: Re : erreur
Posté par: Paradize le 23 Décembre 2009, 11:35:02
Sa commence à me soulé lol  :wall

J'arrive pas à mettre cette auto école !

Voici mon code :

Citer
else if(PlayerToPointStripped(1, playerid,1494.6207,1305.2336,1093.2891, cx,cy,cz))
             {
                 GameTextForPlayer(playerid, "~w~Auto-Ecole", 5000, 1);
                SetPlayerInterior(playerid, 3);
              SetPlayerPos(playerid,1496.5767,1307.8413,1093.2891);
       }

Il faut autre chose..j'ai du mal à comprendre là...:s

Titre: Re : erreur
Posté par: The Bird le 23 Décembre 2009, 11:37:00
Remplace

if(PlayerToPointStripped(1, playerid,1494.6207,1305.2336,1093.2891, cx,cy,cz))
Par

if(PlayerToPoint(1, playerid,1494.6207,1305.2336,1093.2891))
Titre: Re : erreur
Posté par: minimicro le 23 Décembre 2009, 11:37:59
Nan, le striped marche bien normalement, si tu as bien fait un GetPlayerPos avant ...

Ou l'as tu mis ca ? Dans le CheckForWalkingTeleport ?
Titre: Re : erreur
Posté par: Paradize le 23 Décembre 2009, 11:47:27
Rien ne marche lol

Mon code, le voici :

Citer
else if(PlayerToPoint(1, playerid,1494.6207,1305.2336,1093.2891))
           {
              //auto ecole entré
               SetPlayerPos(playerid, 1494.6207,1305.2336,1093.2891);
            GameTextForPlayer(playerid, "~w~Auto Ecole",5000,1);
            SetPlayerInterior(playerid,3);
            SetPlayerFacingAngle(playerid, 0);
            PlayerInfo[playerid][pInt] = 3;
         }
         else if(PlayerToPoint(1, playerid,1496.5767,1307.8413,1093.2891))
         {
            //auto école sortie
            SetPlayerPos(playerid, 2046.8928,-1908.0372,13.5469);
            GameTextForPlayer(playerid, "~w~Los Angeles",5000,1);
            SetPlayerInterior(playerid,0);
            SetPlayerFacingAngle(playerid, 280);
            PlayerInfo[playerid][pInt] = 0;
      }

Je spawn où spawn les joueurs civile, pas de pikup devant..rien qui marche  :-[
Titre: Re : erreur
Posté par: minimicro le 23 Décembre 2009, 12:54:16
Mais, a quel endroit l'as tu mis ce code ?



Pour le pickup, il faut que tu utilise un AddStaticPickup ... dans le OnGameModeInit
Titre: Re : erreur
Posté par: ApocKalipsS le 23 Décembre 2009, 12:57:45
Je crois que tu te trompe complètement  :D
Le code que tu as là, c'est pour rentrer dans l'auto école.
Pour spawner dans l'auto école, il faut passer par OnPlayerSpawn, ou SetplayerSpawn dans le LARP.
Titre: Re : erreur
Posté par: minimicro le 23 Décembre 2009, 13:00:37
Qu'est ce que tu veux faire exactement ?

L'entrée/sortie de l'auto école ? Ou un spawn a l'auto école quand tu arrive sur le serveur ?
Titre: Re : erreur
Posté par: Paradize le 23 Décembre 2009, 13:03:49
J'aimerais mettre une auto école à Los Santos avec l'intérieur de l'auto école de San Fierro.

Les joueurs de la faction instructeur spawnerons dans l'intérieur de l'auto école.

Je sais pas le code (Je comprend pas) et je ne sais pas où mettre tous çà..

Peut-on me faire un code pour que je voille ? Ou m'expliquer ce qu'il faut que je mette et à quel endroit..etc

Merci  :-[

Titre: Re : erreur
Posté par: minimicro le 23 Décembre 2009, 13:06:04
AAA, ok, c'est quel script de base que tu as ?
Titre: Re : erreur
Posté par: Paradize le 23 Décembre 2009, 13:09:03
Godfather de Fear

Celui là : http://forum.sa-mp.com/index.php?topic=24634.0 (http://forum.sa-mp.com/index.php?topic=24634.0)
Titre: Re : erreur
Posté par: minimicro le 23 Décembre 2009, 13:15:53
Ok, y'a ca dans le SetPlayerSpaw.

            if(IsAnInstructor(playerid)) //Driving/Flying School spawn
    {
if(SchoolSpawn[playerid] == 0)
{
        SetPlayerToTeamColor(playerid);
SetPlayerPos(playerid, -2032.6810,-117.4816,1035.1719);
SetPlayerFacingAngle(playerid, 275.1114);
SetPlayerInterior(playerid,3);
PlayerInfo[playerid][pInt] = 3;
}
else if([playerid] == 1)
{
SetPlayerToTeamColor(playerid);
SetPlayerPos(playerid, 414.4144,2531.9580,19.1565);
SetPlayerFacingAngle(playerid, 4.6505);
SetPlayerInterior(playerid,0);
PlayerInfo[playerid][pInt] = 0;
}
        return 1;
    }

C'est ca que tu doit modifier, changer les SetPlayerPos, et les SetPlayerInterior, suivant ou tu veut faire apparaitre le joueur, il faut aussi que tu soit bien dans la faction 11, le SchoolSpawn sert a definir l'ecole ou tu spawn, si c'est 0, c'est l'autoecole, si c'est 1, c'est l'ecole d'aviation (apparement /spawnchange pour le modifier).
Titre: Re : erreur
Posté par: Paradize le 23 Décembre 2009, 13:19:24
D'accord :)

Merci

Je test le code et je te redis  :)
Titre: Re : erreur
Posté par: minimicro le 23 Décembre 2009, 13:29:00
Normalement, c'est juste pour le spawn a l'arrivée sur le serveur.

Aprés, pour la création d'un pickup, c'est dans le OnGameModeInit, fait une recherche de "pickups=pickups+29", et juste au dessus, tu ajoute une ligne (en changeant les positionX, Y et Z) AddStaticPickup(1239, 1, PositionX,PositionY,PositionZ); // Auto école
Et tu remplace pickups+29, par pickups+30 (systeme de comptage des pickups apparement ?)

Ensuite, il faut que tu recherche la commande "/enter", puis que tu aille a la fin de celle ci ( a la suite du dernier ELSE IF), et que tu ajoute : (les 3 positions, sont celle de l'entrée de l'autoecole)

else if (PlayerToPoint(8.0, playerid,PositionX,PositionY,PositionZ))
{
     GameTextForPlayer(playerid, "~w~Bienvenue a l'auto Ecole", 5000, 1);
     SetPlayerInterior(playerid,XXX); // Mettre le bon interieur
     SetPlayerPos(playerid,X,Y,Z); // Mettre la bonne position de l'interieur de l'auto école
}

Et que tu fasse la même opération dans la commande "/exit"
Titre: Re : erreur
Posté par: Paradize le 23 Décembre 2009, 13:30:37
Merci bien !

je te redis

Je te ajouté MSN..si j'ai du mal, je te bip :p