GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Showroom SA:MP => Discussion démarrée par: S!m le 16 Décembre 2009, 21:13:41
-
[INC] MoneyControl
voilà, je vous présente une petite include super simple mais qui pourrait néanmoins être utile pour plusieurs :P
donc grâce à cette include, vous pouvez aisément vous contrôler server-side l'argent de vos joueurs. Il sauvegarde l'argent des joueurs sur le serveur et vous permet d'y avoir accès en tout temps afin de, par exemple, réajuster le montant d'argent du joueur (permet d'éviter le cheat argent).
Ça peut paraitre inutile jusque là, mais le but principal de cet include est de permettre le partage de données entre les différents scripts exécutés sur votre serveur, l'argent du joueur selon un fs est la même que selon le gm ou un autre fs...
voilà, maintenant il vous suffit de faire le côté plus "visible" de votre système de prévention de cheat argent
DOWNLOAD:
V 1.2 (recommandée):
(http://solidfiles.com/info_imgs/Q70a.jpg) (http://solidfiles.com/d/Q70a)
V 1.1:
(http://solidfiles.com/info_imgs/nQTT.jpg) (http://solidfiles.com/d/nQTT)
Remerciements:
Merci à Cristab pour m'avoir amené à faire cet include et légèrement inspiré :P
Merci à Mr fredo de m'avoir fait penser à une fonction pratique (sans laquelle l'include est plus complexe et lente)
LOG
V1.2:
revu la façon de partager les données
V1.1:
Ajout de la fonction AdjustPlayerMoney qui permet de s'assurer de la synchronisation de l'argent vu par le joueur avec celle sauvegardée par le serveur
V1.0:
Sortie officielle
les commentaires seront apprécié, merci de conserver les crédits
++Sim++
-
Bien jouer Sim ^^
sa peu etre tres utile en y reflechissan
-
Bien joué :P
++ D4 ++
8) 8)
-
Salut,
merci :p
en regardant mon post à nouveau, ca me parait un peu flou....
l'intérêt principal est que le système gère la communication entre les scripts. Si vous changez l'argent d'un joueur dans un script, l'autre peut le détecter.....
++Sim++
-
gg
j'adore cette native
-
J'sais pas si ta vu ma question sur le fofo sa-mp
Mais etant donné que ton script remplace complétement les fonction de base de gestion de l'agrent d'un joueur, et utilise setproperty pour stocker l'argent du joueur, est ce que l'argent du joueur s'affiche tjr ?
J'ai look vite fait le code et a premiere vu ce n'est pas le cas mais j'me trompe ptet (en meme temps sa m'etonerai pas que j'me goure tellement j'ai la tête dans le Q :roll: :p)
-
Salut,
oui, les fonctions appèle également les fonctions de base de sa-mp (donc permettent au joueur de voir l'argent)
C'est d'ailleurs la raison pour laquelle les #define se trouvent à la fin de l'include, dans le cas contraire la fonction s'appèlerait elle-même un nombre infini de fois....
++Sim++
-
Enfaite cette include permet de retirer l' argent du joueur gagner par divers moyen non voulut par le scripteur par exemple stunt ( desactivable mais c 'est un exemple, cheat)
En lui restaurant l' argent qu' il devrait normalement avoir ( ce que le scripteur a voulut lui donner )
Cette include est bien quoique maintenant le pain'n spray est gratuit ( je crois ) les distributeur de boisson aussi ^^
Mais au moins y a plus de cheat ou autre bug utilisable
OnPlayerSpray reglerai le pb du pay' n spray gratuit ( si ce n 'est pas déjà fait lol )
-
Salut,
bah ce genre de choses on peut déjà faire assez aisément avec une simple variable, mais ce qu'apporte principalement cet include est surtout un partage des valeurs entre les différents scripts. Ainsi si un admin (donc un fs d'admin, parfois ces systèmes sont dans le gm mais la plupart sont en fs) donne de l'argent à un joueur et le système principal de régulation de l'argent (le truc qui réajuste l'argent) se trouve dans le gm, le joueur conservera cet argent. Par contre, il ne faut pas oublier d'inclure l'include dans chacun des scripts en question et l'include ne fonctionne pas bien si vous oubliez d'ajouter la fonction core_MoneyInit() dans votre OnFilterScriptInit/OnGameModeInit
EDIT: v1.2 sortie :P, ce devrait être la version finale
++Sim++