• 05 Juin 2026, 18:56:48


Auteur Sujet: Aide Scripting  (Lu 1708 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne rapido

  • Pro-scripteur
  • *
  • Bandit
  • R@pido
  • Messages: 270
    • Voir le profil
Aide Scripting
« le: 10 Août 2010, 21:47:35 »
Hum , Salut Voila J'ai une Nouvelle Question Pour Amélioré Mon serveur :)

En Esperant une Réponse positif :)

La voici :
Voila Dans mon GM j'ai Un /s (Save Position ) /r (Return A sa position saved) Et Voila J'ai le FS Frace Mais mon Probleme c'est que je ne c'est
pas quoi faire pour que quand une course et lancer /s et /r ne sois plus disponnible ( "Vous êtes en Course Action Impossible")

Voila j'espert m'être Bien Exprimé dans ma demande d'aide (Je c pas  8))

A bientôt

++

Hors ligne scott1

  • *
  • Gangster
  • Messages: 1440
    • Voir le profil
Re : Aide Scripting
« Réponse #1 le: 11 Août 2010, 01:45:24 »
Au début du script

new course = 0;

quand la course commence

course = 1;

quand elle fini

course = 0;

/r

si course == 0

on dit qu'il peu pas le faire

ou

ta cmd

même chose pour le /s
Refait un Game mode a partir d'une page blanche



Mes partages:

Systeme de Radio avec Frequence Création

Ajouter des véhicule dans le LARP - Godfather Tuto

Anti Cheat "JunkBuster" traduit en FR Traduction

LARP Traduit FR, V0.3 Traduction

Hors ligne rapido

  • Pro-scripteur
  • *
  • Bandit
  • R@pido
  • Messages: 270
    • Voir le profil
Re : Aide Scripting
« Réponse #2 le: 11 Août 2010, 15:41:11 »
Désoler de te dire sa mais j'ai rien compris  :(

Hors ligne Syg

  • Expert programmeur C/C++/PAWN
  • *
  • The GTAOnline Jesus
  • Messages: 3908
    • Voir le profil
Re : Aide Scripting
« Réponse #3 le: 11 Août 2010, 17:23:56 »
Ton problème est un peu plus compliqué que le laisse sous entendre scott.

Ton système de course est dans un FS et il n'est pas possible d'échanger directement des données entre un FS et le Gamemode.
Ce qui rend la solution de scott impossible à mettre ne œuvre pour toi.

La solution est de passer par les fonctions SetPVarInt (http://wiki.sa-mp.com/wiki/SetPVarInt) et GetPVarInt (http://wiki.sa-mp.com/wiki/GetPVarInt).

++
Syg
Courtesy of GtaManiac

Hors ligne rapido

  • Pro-scripteur
  • *
  • Bandit
  • R@pido
  • Messages: 270
    • Voir le profil
Re : Aide Scripting
« Réponse #4 le: 11 Août 2010, 17:31:11 »
Mais enfaite si Regarde De AOD a Mon GM Sim ma aider a faire Passez :

Dans mon GM j'ai une cmd /open Mais réserver qu'au Anim et dans mon GM ya pas les Renseignement nécessaire Allor il ma passez une fonction
Qui passe Tout vers le FS Regarde :


#define GetAdminLevel(%0) CallRemoteFunction("core_GetPlayerLevel", "i", %0)

Hors ligne Tux

  • *
  • Tueur en série
  • GeChaud =3
  • Messages: 112
    • Voir le profil
    • Trace - Serveur Multi Modes
Re : Aide Scripting
« Réponse #5 le: 11 Août 2010, 19:42:54 »
Salut :),

Ou le plus simple serrait d'intégré le FilterScript au GM en correspendant chaque CallBacks du GM aux CallBacks du FS  :-\

 :dejadehors

++
Tux

Hors ligne rapido

  • Pro-scripteur
  • *
  • Bandit
  • R@pido
  • Messages: 270
    • Voir le profil
Re : Aide Scripting
« Réponse #6 le: 11 Août 2010, 20:00:07 »
Mais Nn Cela Ne sert a rien Sinon je fait pas de CMD Dans le GM

Hors ligne Tux

  • *
  • Tueur en série
  • GeChaud =3
  • Messages: 112
    • Voir le profil
    • Trace - Serveur Multi Modes
Re : Aide Scripting
« Réponse #7 le: 11 Août 2010, 20:02:04 »
Ce que je voulais dire, c'était d'intégré le FS de Course au GM, puis d'intégré ce qu'a dit Scott à tes commandes ;).

Hors ligne Syg

  • Expert programmeur C/C++/PAWN
  • *
  • The GTAOnline Jesus
  • Messages: 3908
    • Voir le profil
Re : Aide Scripting
« Réponse #8 le: 12 Août 2010, 10:37:47 »
La solution de Sim date d'avant la création des fonctions que j'ai citées (car ces fonctions n'existent pas dans les versions 0.2 de SAMP).
De plus, cette solution oblige à créer des fonctions dans ton GM (par exemple core_GetPlayerLevel) qui seront appelées dans ton FS.

L'utilisation de SetPVarInt et GetPVarInt est très simple et très avantageuse.

Dans le GM :
Au moment de la connexion du joueur playerid on fait
SetPVarInt (playerid, "EnCourse", 0);Ceci a pour effet de créer une variable interne nommée EnCourse et associée au joueur playerid.
NB : Cette variable sera détruite automatiquement au moment de la déconnexion du joueur.

Dans le FS :
Lorsque le joueur rejoint la course on fait :
SetPVarInt (playerid, "EnCourse", 1);Et lorsque le joueur termine la course on fait :
SetPVarInt (playerid, "EnCourse", 0);
Dans le GM :
On ajoute au tout début des commandes /s et /r :
if (GetPVarInt (playerid, "EnCourse") == 1)
{
   SendClientMessage (playerid, 0xFF000000, "Vous êtes en course, commande interdite");
   return 1;
}
NB : Le bout de code ci-dessus peut-être facilement transformé en fonction.

++
Syg
Courtesy of GtaManiac

Hors ligne rapido

  • Pro-scripteur
  • *
  • Bandit
  • R@pido
  • Messages: 270
    • Voir le profil
Re : Aide Scripting
« Réponse #9 le: 12 Août 2010, 18:37:28 »
 :D Merci Syg C'est Rapide et Maintenant je pourrai le faire en plusieurs manière dans d'autre Script

Merci Encore :)

Hors ligne Eloctro

  • Pawno Fan
  • *
  • Grand Banditisme
  • Aight !
  • Messages: 846
    • Voir le profil
    • GtaSA-RP
Re : Aide Scripting
« Réponse #10 le: 12 Août 2010, 19:09:47 »
L'utilisation peut être encore plus économique car tant que tu modifie pas la variable elle ne se crée pas et quand elle n'est pas créé elle renvoie directement '0'
Donc tu as juste a remplacé dans le FS quand le joueur quitte la course SetPVarInt (playerid, "EnCourse", 0); par DeletePVar(playerid,"EnCourse");
et de supprimer le SetPVarInt (playerid, "EnCourse", 0); a la connexion du Joueur

Hors ligne rapido

  • Pro-scripteur
  • *
  • Bandit
  • R@pido
  • Messages: 270
    • Voir le profil
Re : Aide Scripting
« Réponse #11 le: 12 Août 2010, 23:56:29 »
Test Terminé Et Résultat Positif Comme demande Sur Message
Merci a vous les gas et Coco76 , Je garde la solution de Syg Car Je m'y retrouverai plus facilement puisque c'est les même chose
mais merci quand même  :happy

++