• 04 Juin 2026, 11:48:18


Auteur Sujet: CheckPoint  (Lu 2463 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne John_Montavedro

  • Création du serveur UVDV
  • *
  • Tueur en série
  • Position: GTAOnline Addict :p
  • Messages: 220
    • Voir le profil
CheckPoint
« le: 28 Octobre 2010, 17:15:16 »
Bonsoir  :P

En ce moment, j'ai encore un problème avec mon checkpoint..

Voici le code :
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp(cmdtext,"/entrer",true) == 0)
{
  if(IsPlayerInRangeOfPoint(playerid,7.0,363.3236,2476.9944,16.4844))
  return 1;
   {
    SetPlayerPos(playerid, 501.980987,-69.150199,998.757812);   /* Oublie pas le setplayerpos sinon sa dira seulement un message */
    SetPlayerInterior(playerid, 11);
  SendClientMessage(playerid, couleur_dire, "Bar des terroristes");
}
        }
return 1;
}

Quand je vais à l'endroit ou il y a le checkpoint et que je fais /entrer, rien ne se passe...

Si vous pourriez m'aider, merci!
« Modifié: 28 Octobre 2010, 21:45:10 par John_Montavedro »

Hors ligne Mr_C30

  • *
  • Gangster
  • souvent conquise jamais soumise
  • Messages: 1937
    • Voir le profil
Re : CheckPoint
« Réponse #1 le: 28 Octobre 2010, 17:34:34 »
Bonsoir  :P

En ce moment, j'ai encore un problème avec mon checkpoint..

Voici le code :
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp(cmdtext,"/entrer",true) == 0)
{
  if(IsPlayerInRangeOfPoint(playerid,7.0,363.3236,2476.9944,16.4844))
  return 1;
   {
  SetPlayerInterior(playerid, 11);
    SetPlayerPos(playerid, 501.980987,-69.150199,998.757812);   /* Oublie pas le setplayerpos sinon sa dira seulement un message */
  SendClientMessage(playerid, couleur_dire, "Bar des terroristes");
}
        }
return 1;
}

Quand je vais à l'endroit ou il y a le checkpoint et que je fais /entrer, rien ne se passe...

Si vous pourriez m'aider, merci!


public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp(cmdtext,"/entrer",true) == 0)
{
  if(IsPlayerInRangeOfPoint(playerid,7.0,363.3236,2476.9944,16.4844)){
    SetPlayerPos(playerid, 501.980987,-69.150199,998.757812);   /* Oublie pas le setplayerpos sinon sa dira seulement un message */
    SetPlayerInterior(playerid, 11);
  SendClientMessage(playerid, couleur_dire, "Bar des terroristes");
return 1;
}
        else{SendClientMessage(playerid, couleur_dire, "...");}
}
}

;)



Radis du soir bonsoir !


Hors ligne John_Montavedro

  • Création du serveur UVDV
  • *
  • Tueur en série
  • Position: GTAOnline Addict :p
  • Messages: 220
    • Voir le profil
Re : CheckPoint
« Réponse #2 le: 28 Octobre 2010, 18:18:54 »
Merci à toi C30 :)

Seul problème : Quand je rentre dans le bar tout est clean sauf que dans ce bar il y a un icon et quand on va sur cette icon direct il nous amène à Las Venturas... (icon pour entrer dans les batiments sur gta solo)

Comment l'enlever, s'il vous plait? merci!

Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Re : CheckPoint
« Réponse #3 le: 28 Octobre 2010, 18:21:31 »
Salut,

il n'y a qu'une seule solution:

DisableInteriorEnterExits();

++Sim++





Hors ligne John_Montavedro

  • Création du serveur UVDV
  • *
  • Tueur en série
  • Position: GTAOnline Addict :p
  • Messages: 220
    • Voir le profil
Re : Re : CheckPoint
« Réponse #4 le: 28 Octobre 2010, 18:37:20 »
Salut,

il n'y a qu'une seule solution:

DisableInteriorEnterExits();

++Sim++

Un grand merci à toi Sim, sa marche très mais c'est normal que quand je compile sa affiche des warnings aux niveau de cette phrase?
Voici comment je l'ai utilisée :
DisableInteriorEnterExits(501.980987,-69.150199,998.757812);
?

Hors ligne Mr_C30

  • *
  • Gangster
  • souvent conquise jamais soumise
  • Messages: 1937
    • Voir le profil
Re : CheckPoint
« Réponse #5 le: 28 Octobre 2010, 18:38:56 »
DisableInteriorEnterExits();

tu a juste a mettre sa dans la call  init ;)
« Modifié: 28 Octobre 2010, 18:40:37 par Mr_C30 »



Radis du soir bonsoir !


Hors ligne John_Montavedro

  • Création du serveur UVDV
  • *
  • Tueur en série
  • Position: GTAOnline Addict :p
  • Messages: 220
    • Voir le profil
Re : Re : CheckPoint
« Réponse #6 le: 28 Octobre 2010, 18:59:15 »
DisableInteriorEnterExits();

tu a juste a mettre sa dans la call  init ;)


Déjà fait xD

----------------
Double
----------------

Au faite, j'ai fais une petite betise je pense :o

J'ai fais la commande /entrer et maintenant j'ai fais la commande /sortir, mais quand je l'utilise, je sort bien ou je le désire mais je n'aperçois que les objets que j'ai mis avec MTA et non les voitures(on les voit sur le radar avec des icons gris)... Le radar affiche que du gris :s

Je sais pas comment j'ai fais.. J'ai peut etre une idée.. Mettre le monde virtuel à 1 ou 0 ..
« Modifié: 28 Octobre 2010, 19:25:25 par John_Montavedro »

Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Re : CheckPoint
« Réponse #7 le: 28 Octobre 2010, 19:15:27 »
Salut,

ton personnage est toujours dans l'intérieur, tu as oublié d'ajouter SetPlayerInterior(playerid, 0) dans ta commande pour sortir

++Sim++





Hors ligne John_Montavedro

  • Création du serveur UVDV
  • *
  • Tueur en série
  • Position: GTAOnline Addict :p
  • Messages: 220
    • Voir le profil
Re : Re : CheckPoint
« Réponse #8 le: 28 Octobre 2010, 19:19:46 »
Salut,

ton personnage est toujours dans l'intérieur, tu as oublié d'ajouter SetPlayerInterior(playerid, 0) dans ta commande pour sortir

++Sim++

Ah en faite, j'ai laissé le personnage dans l'interieur du bar .. Merci, je test de suite

EDIT : super merci aucun problème :)

Double post
Re-bonsoir, j'ai une petite question...

J'utilise 2 groupe (team) Les militaires, avec "case 0" et les terroristes avec "case 1"
J'aimerais savoir comment faire pour que sur ce script, seul les terroristes "case 1" puissent entrer dans le batiment..
if(strcmp(cmdtext,"/entrer",true) == 0)
{
  if(IsPlayerInRangeOfPoint(playerid,7.0,363.3236,2476.9944,16.4844)){
    SetPlayerPos(playerid, 501.980987,-69.150199,998.757812);   /* Oublie pas le setplayerpos sinon sa dira seulement un message */
    SetPlayerInterior(playerid, 11);
  SendClientMessage(playerid, couleur_dire, "Bar des terroristes");
return 1;
}
        else{SendClientMessage(playerid, couleur_dire, "...");}
}

J'ai essayé de refuser "case 0" en else mais sa marche pas :s

si vous pourriez m'aider, merci!
« Modifié: 28 Octobre 2010, 21:30:34 par John_Montavedro »

Hors ligne Bl4st3r67

  • *
  • Criminel
  • Messages: 39
    • Voir le profil
Re : CheckPoint
« Réponse #9 le: 28 Octobre 2010, 23:30:25 »
Bah je pense que tu rajoute un if case 1 machin. et plus bas un else if case 2 machin. Tu lui envoie un msg du genre "Tu n'est pas un terroriste". (Désoler si c'est brouillon, mais je rédige depuis mon téléphone =O.)

++

Hors ligne John_Montavedro

  • Création du serveur UVDV
  • *
  • Tueur en série
  • Position: GTAOnline Addict :p
  • Messages: 220
    • Voir le profil
Re : Re : Re : Re : CheckPoint
« Réponse #10 le: 29 Octobre 2010, 10:13:51 »
Salut,

ton personnage est toujours dans l'intérieur, tu as oublié d'ajouter SetPlayerInterior(playerid, 0) dans ta commande pour sortir

++Sim++

Ah en faite, j'ai laissé le personnage dans l'interieur du bar .. Merci, je test de suite

EDIT : super merci aucun problème :)

Double post
Re-bonsoir, j'ai une petite question...

J'utilise 2 groupe (team) Les militaires, avec "case 0" et les terroristes avec "case 1"
J'aimerais savoir comment faire pour que sur ce script, seul les terroristes "case 1" puissent entrer dans le batiment..
if(strcmp(cmdtext,"/entrer",true) == 0)
{
  if(IsPlayerInRangeOfPoint(playerid,7.0,363.3236,2476.9944,16.4844)){
    SetPlayerPos(playerid, 501.980987,-69.150199,998.757812);   /* Oublie pas le setplayerpos sinon sa dira seulement un message */
    SetPlayerInterior(playerid, 11);
  SendClientMessage(playerid, couleur_dire, "Bar des terroristes");
return 1;
}
        else{SendClientMessage(playerid, couleur_dire, "...");}
}

J'ai essayé de refuser "case 0" en else mais sa marche pas :s

si vous pourriez m'aider, merci!

Salut,

Pour ton problème de team , lorsque le joueur choisi la case "0" , met lui la team ID 0 , et pour la case 1 , team ID 1
Ensuite dans ta commande ,
if(GetPlayerTeam ..
++
Beno

Je remplace le "else" par "if" donc?

EDIT : Pour le SetPlayerTeam en case 0 et 1 c'est bon, manque plus que le "if getpleyerteam 0"
« Modifié: 29 Octobre 2010, 10:18:21 par John_Montavedro »

Hors ligne John_Montavedro

  • Création du serveur UVDV
  • *
  • Tueur en série
  • Position: GTAOnline Addict :p
  • Messages: 220
    • Voir le profil
Re : CheckPoint
« Réponse #11 le: 29 Octobre 2010, 10:30:44 »
Mhh.. j'ai enlevé les "else" mais le compilateur me fait des remarques sur les "If GetPlayerTeam"

Voici le code que j'ai re-re-écrit :
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp(cmdtext,"/entrer",true) == 0)
{
if(GetPlayerTeam(playerid) != 1)) return SendClientMessage(playerid,rouge,"Avec vos outils vous arrivez à entrer dans le bâtiment terroriste");
if(GetPlayerTeam(playerid) != 2)) return SendClientMessage(playerid,vert,"Vous passez votre carte magnétique... Le navigateur affiche OK");
  if(IsPlayerInRangeOfPoint(playerid,7.0,363.3236,2476.9944,16.4844)){
    SetPlayerPos(playerid, 501.980987,-69.150199,998.757812);   /* Oublie pas le setplayerpos sinon sa dira seulement un message */
    SetPlayerInterior(playerid, 11);
  SendClientMessage(playerid, couleur_dire, "Bar des terroristes");
return 1;
}
}
    if(strcmp(cmdtext,"/sortir",true) == 0)
{
  if(IsPlayerInRangeOfPoint(playerid,7.0,501.9347,-68.0373,998.7578)){
    SetPlayerPos(playerid, 363.3236,2476.9944,16.4844);   /* Oublie pas le setplayerpos sinon sa dira seulement un message */
    SetPlayerInterior(playerid, 0);
  SendClientMessage(playerid, couleur_dire, "QG des terroristes");
return 1;
}
}
if(strcmp(cmdtext,"/entrer",true) == 0)
{
if(GetPlayerTeam(playerid) != 2)) return SendClientMessage(playerid,rouge,"Avec vos outils vous arrivez à entrer dans le bâtiment terroriste");
if(GetPlayerTeam(playerid) != 1)) return SendClientMessage(playerid,vert,"Vous passez votre carte magnétique... Le navigateur affiche OK");
  if(IsPlayerInRangeOfPoint(playerid,7.0,178.8815,1906.5011,18.0732)){
    SetPlayerPos(playerid, 2215.454833,-1147.475585,1025.796875);   /* Oublie pas le setplayerpos sinon sa dira seulement un message */
    SetPlayerInterior(playerid, 15);
  SendClientMessage(playerid, couleur_dire, "Chambres des militaires");
return 1;
}
}
return 1;
}

Les erreurs sont de ce type :

C:\DOCUME~1\Meyer\MESDOC~1\serveur\GAMEMO~1\new.pwn(285) : error 029: invalid expression, assumed zero
C:\DOCUME~1\Meyer\MESDOC~1\serveur\GAMEMO~1\new.pwn(285) : warning 215: expression has no effect
C:\DOCUME~1\Meyer\MESDOC~1\serveur\GAMEMO~1\new.pwn(285) : error 001: expected token: ";", but found "return"
C:\DOCUME~1\Meyer\MESDOC~1\serveur\GAMEMO~1\new.pwn(286) : warning 225: unreachable code

 :blink

EDIT : Toujours ces même erreurs, j'ai essayé de remplacer "return" par ";" mais sa me fait tout de même des erreurs :(
« Modifié: 29 Octobre 2010, 11:01:39 par John_Montavedro »