Camanche
Messages postés149Date d'inscriptionjeudi 23 octobre 2003StatutMembreDernière intervention17 novembre 2007
-
28 janv. 2006 à 21:27
cs_SornDrixer
Messages postés2084Date d'inscriptionjeudi 12 décembre 2002StatutMembreDernière intervention30 janvier 2011
-
2 févr. 2006 à 07:22
Voila, je voudrais savoir s'il est possible de savoir si l'autre a un addon. Je m'explique:
Je mets dans le menu nicklist (c'est pour lui proposer un jeu à deux)
Jouer avec $1 :{ set %player2 $$1 | set %ctour me | .ctcp %player2 jouer $me
En fait je voudrais vérifier s'il a l'addon du jeux.
{ si $$1 a l'addon ]Jouer avec $1 :{ set %player2 $$1 | set %ctour me | .ctcp %player2 jouer $me
COOLMAN002
Messages postés969Date d'inscriptionlundi 16 juin 2003StatutMembreDernière intervention 1 juillet 20121 28 janv. 2006 à 21:48
Plusieurs possibilité...
1) Soit à chaque parti fait tu savuegardes le pseudo de la personne dans un fichier.
2) Tu ajoutes un ctcpreply en cas d'un ctcp JEU, et si la personne te renvoi un reply, ça veut dire qu'il a l'add-on.
Camanche
Messages postés149Date d'inscriptionjeudi 23 octobre 2003StatutMembreDernière intervention17 novembre 2007 29 janv. 2006 à 03:34
Plus simplement, je voudrais savoir si l'autre chatteur a la version du jeu sur son script. Car si on met dans son menu nicklist:
Jouer avec $1 :{ set %player2 $$1 | set %ctour me | .ctcp %player2 jouer $me
Ca nous le marquera tout le temps, on est d'accord.
Donc je voudrais que ça me le marque seulement à ceux qui ont l'addon sur leur script. Sinon on peut se voir sur un chat ou sur MSN si tu comprends pas...
cs_SornDrixer
Messages postés2084Date d'inscriptionjeudi 12 décembre 2002StatutMembreDernière intervention30 janvier 20118 29 janv. 2006 à 11:01
Bonjour,
Tu dois mettre dans tes popups (catégorie nicklist donc) :
$iif(ta condition,Jouer avec $$1):/ctcp $$1 jouer $me
Le menu "Jouer avec X" s'affichera seulement si la condition se révèle être vraie.
Pour vérifier si le joueur d'en face à l'addon, tu peux faire un système de CTCP (comme l'avais expliqué COOLMAN002 un peu plus haut), tu envoies par exemple /ctcp pseudo nomdeladdon, et avec l'event ctcp, tu réponds /ctcp pseudo nomdeladdon-OK pour lui signaler que l'addon est bien en sa possession.
Un p'tit conseil : c'est un peu casse-tête d'afficher seulement le menu "Jouer avec X" pour les possesseurs de l'addon, autant l'afficher en permanence. Ou alors, tu peux afficher un deuxième menu "vérifier si X possède l'addon", c'est un compromis entre ton idée et la mienne.
Alex_974
Messages postés29Date d'inscriptionlundi 16 janvier 2006StatutMembreDernière intervention14 février 2006 31 janv. 2006 à 16:49
Bah jpense a plus simple moi . Si tu veux seulement savoir si l'autre en question a l'addon que tu veux il s'agit de rajouter une commande dans l'addon. Par exemple on *:TEXT:*:*: {
if ( $1 == !quialaddon ) { notice $nick Moi je l'ai }
}
Et pour savoir si quelqu'un en particulier a l'addon bah tu met
on *:TEXT:*:*: {
if ( $1 !taladdon ) && ($2 $me) { notice $nick Oui }
}
Et puis voila tu lances ton addon jpense que tu peux le faire seulement si c'est toi qui distribue l'addon en question comme ca tu peux rajouter la commande toi même. Si jamais ce n'est pas toi qui a créé l'addon en question bah ... jvois deux solutions :
_Leur dire de rajouter les deux cmd ci dessus :p ( Mais tu sauras qui l'a a ce moment la lol )
_Abandoner (LoL) a toi de voir ;)
Si jamais vous trouvez que je parle trop et que je dis parfois des betises n'hesitez pas a me le signaler (gentillement svp lol).
Camanche
Messages postés149Date d'inscriptionjeudi 23 octobre 2003StatutMembreDernière intervention17 novembre 2007 1 févr. 2006 à 02:05
En fait j'ai mis en remote:
On ^*:TEXT:*:#:{
if (AddonDuJeu isin $1-) { .notice $nick 12Moi j'ai l'addon du jeu }
}
En dans le menu nicklist:
Voir qui a l'addon du jeu: .msg $chan 12Qui a l'4AddonDuJeu12?
Donc ça ça marche nickel, merci. Mais j'aurais préféré que ma proposition de jouer ne se fasse que si l'autre a l'addon en clic droit sur son pseudo...
Exemple SornDrixer ma condition pourrait être: $dname == LeNomDuScript ?
Ce qui donnerait:
$iif($dname- == NomDuScript,Jouer avec $$1):/set %player2 $$1 | /set %ctour me | /.ctcp %player2 jouer $me
Ou alors je ne comprends pas ce que tu veux dire par tacommande? Et à la place de "ton code de vérification"?
ou alors c'est ça:
$iif($JouerAvecMoi,Jouer avec $$1)
et l'alias:
alias JouerAvecMoi {
set %player2 $$1 | /set %ctour me | /.ctcp %player2 jouer $me
}
cs_SornDrixer
Messages postés2084Date d'inscriptionjeudi 12 décembre 2002StatutMembreDernière intervention30 janvier 20118 1 févr. 2006 à 07:31
D'abord,
Tu comptes distribuer un script entier ou un addon ?
Si c'est juste un addon, et que la personne ne l'a pas, comment veux-tu vérifier localement si le dialog "NomDuScript" existe, il faut donc vérifier à distance (et au passage, $dname ne retourne rien si il est utilisé en dehors de l'événement DIALOG, tu peux le vérifier par toi-même en //echo)
le "tacommande" est censé lancer la procédure de vérification, par CTCP, en privé, par socket, peu importe, tant que cela se fait à distance (une personne A envoie une requête à la personne B afin de voir si B possède bien l'addon de A)
Mais je redis ce que j'ai dis : ce que tu fais c'est beaucoup trop casse-tête, tu fais un menu "Jouer avec XXX".
Si on demande à jouer avec quelqu'un qui ne possède pas l'addon, bah aucun problème, un message comme "Impossible : XXX ne possède pas l'addon" fera l'affaire.
Pour faire à ta façon, il nous faut utiliser :
- un $iif (dans le popup)
- une commande qui va lancer la vérification (appelée dans le if)
- un événement qui va gèrer la réponse envoyée par le client distant
Mais le problème se situe au niveau de l'événement, avec $iif on ne pas déclencher un événement, et une commande à elle-seule ne peut pas en déclencher non plus, donc je me demande même si c'est quelque chose de faisable
Camanche
Messages postés149Date d'inscriptionjeudi 23 octobre 2003StatutMembreDernière intervention17 novembre 2007 1 févr. 2006 à 21:06
Ok, je distribue un script. C'est pour ça que le dname ne changera pas. Mais comme tu dis SornDrixer, "Si on demande à jouer avec quelqu'un qui ne possède pas l'addon, bah aucun problème, un message comme "Impossible : XXX ne possède pas l'addon" fera l'affaire." Comment veux-tu afficher le message, là je ne comprends pas...
cs_SornDrixer
Messages postés2084Date d'inscriptionjeudi 12 décembre 2002StatutMembreDernière intervention30 janvier 20118 2 févr. 2006 à 07:22
Au vu de ton alias :
alias JouerAvecMoi {
set %player2 $$1 | /set %ctour me | /.ctcp %player2 jouer $me
}
Tu es censé envoyer un ctcp au joueur non ? Donc je suppose qu'il y répond si il a l'addon (et qu'il n'y répondra pas si il n'a pas l'addon)
Si le joueur te renvoit /ctcp jouer-ok si il a l'addon :
menu nicklist {
Jouer avec XX:/verification $$1
}
alias verification ctcp $1 jouer $me | timerverif 1 5 /echo -a $1 ne possède pas l'addon
CTCP *:jouer-ok:*:{
;=> la personne possède l'addon, on lance la partie
.timerverif off
;=>on arrete le timerverif qui était censé nous afficher que XX ne possède pas l'addon si aucun ctcp n'était recu au bout de 5 secondes
}