Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

RÉPONDEUR + ANTI PV


Information sur la source

Description

Cliquez pour voir la capture en taille normale
petit option de pv simple et clair
 

Source

  • alias Option PV dialog -m optionpv optionpv
  • dialog optionpv {
  • title "Option PV"
  • size -1 -1 300 200
  • box "Méssage d'accueil du PV" ,2, 10 10 280 80
  • check "Activer le méssage d'accueil du PV" ,3, 20 30 220 20
  • edit %pvmsg ,4, 20 55 260 20, autohs
  • box "Anti PV" ,5, 10 97 280 50
  • check "Activer l'anti PV ( fermera automatiquement le PV )" ,6, 20 117 260 20
  • button "OK" ,7, 95 160 100 30, multi ok
  • }
  • on 1:dialog:optionpv:init:*: {
  • if (%pvmessage == on) { did -c optionpv 3 }
  • if (%pvmessage == off) { did -b optionpv 4 }
  • if (%pvmsg != $null) { did -ra optionpv 4 %pvmsg }
  • if (%pvferme == on) { did -c optionpv 6 }
  • }
  • on 1:dialog:optionpv:sclick:7: { set %pvmsg $did(4) }
  • on 1:dialog:optionpv:sclick:*: {
  • if ($did(3).state == 1) { did -e optionpv 4 | set %pvmessage on }
  • if ($did(3).state == 0) { did -b optionpv 4 | set %pvmessage off }
  • if ($did(6).state == 1) { set %pvferme on }
  • if ($did(6).state == 0) { set %pvferme off }
  • }
  • #optionpv on
  • on 1:open:?: {
  • if (%pvmessage == on) { /msg $nick %pvmsg }
  • if (%pvferme == on) { /notice $nick 14Je n'accèpte pas de PV désolé | close -m $nick }
  • halt
  • }
  • #optionpv end
alias Option PV dialog -m optionpv optionpv
dialog optionpv {
  title "Option PV"
  size -1 -1 300 200
  box "Méssage d'accueil du PV" ,2, 10 10 280 80
  check "Activer le méssage d'accueil du PV" ,3, 20 30 220 20
  edit %pvmsg ,4, 20 55 260 20, autohs
  box "Anti PV" ,5, 10 97 280 50
  check "Activer l'anti PV ( fermera automatiquement le PV )" ,6, 20 117 260 20
  button "OK" ,7, 95 160 100 30, multi ok
}
on 1:dialog:optionpv:init:*: {
  if (%pvmessage == on) { did -c optionpv 3 }
  if (%pvmessage == off) { did -b optionpv 4 }
  if (%pvmsg != $null) { did -ra optionpv 4 %pvmsg }
  if (%pvferme == on) { did -c optionpv 6 }
}
on 1:dialog:optionpv:sclick:7: { set %pvmsg $did(4) }
on 1:dialog:optionpv:sclick:*: {
  if ($did(3).state == 1) { did -e optionpv 4 | set %pvmessage on }
  if ($did(3).state == 0) { did -b optionpv 4 | set %pvmessage off }
  if ($did(6).state == 1) { set %pvferme on }
  if ($did(6).state == 0) { set %pvferme off }
}
#optionpv on
on 1:open:?: {
  if (%pvmessage == on) { /msg $nick %pvmsg }
  if (%pvferme == on) { /notice $nick 14Je n'accèpte pas de PV désolé | close -m $nick }
  halt
}
#optionpv end

Commentaires et avis

signaler à un administrateur
Commentaire de RCA ArKanis le 01/05/2007 10:55:26

C'est du Déjà Vu, et le code est assez moche (pas optimisé)
Rien qu'en dessous de ton code, dans la case "Sources qui peuvent êreen rapport avec celle-ci", tu n'as que des anti-pv, et y'en a beaucoup plus ...
Utilise else quand c'est possible et évite les variables globales. Prends des .ini, c'est largement mieux.


  if ($did(3).state == 1) { did -e optionpv 4 | set %pvmessage on }
  if ($did(3).state == 0) { did -b optionpv 4 | set %pvmessage off }
  if ($did(6).state == 1) { set %pvferme on }
  if ($did(6).state == 0) { set %pvferme off }

devient :
if ($did(3).state) { did -e opionpv4 | set %pvmessage 1 }
else { did -b optionpv 4 | set %pvmessage 0 }
if ($did(6).state) set %pvferme 1
else set %pvferme 0

Les 0 et 1 sont booléens, tu gagnes donc du temps (à l'écriture) si tu veux faire un if
Les { } ne sont pas nécessaires si tu n'as qu'une action, le tout en une ligne
Les / ne sont JAMAIS nécessaires

Ensuite,
  if (%pvmessage == on) { /msg $nick %pvmsg }
  if (%pvferme == on) { /notice $nick 14Je n'accèpte pas de PV désolé | close -m $nick }
devient :
if (%pvmessage) msg $nick %pvmsg
if (%pvferme) { notice $nick 14Je n'accèpte pas de PV désolé | close -m $nick }

Et enfin, regroupe tes ON DIALOG
on *:dialog:nom:*:*:{
  if ($devent == init) {
    ...
  }
  elseif ($devent == sclick) {
    if ($did == 1) ...
    elseif ($did == 2) ...
    etc ...
  }
}

Corrige déjà tout ça :)

signaler à un administrateur
Commentaire de wims le 01/05/2007 14:48:29

Du même avis que plus haut :

if (%pvmsg != $null) deviens if (!%pvmsg) si %pvmsg ne peux pas prendre la valeur 0 ou $false
if (%pvmsg != $null) { did -ra optionpv 4 %pvmsg }
Cette ligne ne sert en fait a rien, tu peux directement la mettre dans la table de ton dialog ( ce que tu as déja fais ! ) donc enleve cette ligne

Tu te permet de /halt sur un on *:open:*:?: c'est un peu dangereux, qa quoi sert-il ? utilise /return au pire

L'option du bouton ok "multi" c'étais parce que le bouton allé être jaloux de n'avoir qu'une option :( ? ( elle ne sert a rien )

signaler à un administrateur
Commentaire de Showcase le 01/05/2007 18:41:16

  if ($did(3).state == 1) { did -e optionpv 4 | set %pvmessage on }
  if ($did(3).state == 0) { did -b optionpv 4 | set %pvmessage off }
  if ($did(6).state == 1) { set %pvferme on }
  if ($did(6).state == 0) { set %pvferme off }

devient

  if ($did(3).state == 1) { did -e optionpv 4 | set %pvmessage on }
  else { did -b optionpv 4 | set %pvmessage off }
  if ($did(6).state == 1) { set %pvferme on }
  else { set %pvferme off }

ça marche mieux comme ça :)

signaler à un administrateur
Commentaire de RCA ArKanis le 01/05/2007 20:53:56

sauf que tu n'as pas vu que j'avais modifié le ON OPEN en conséquence :x

signaler à un administrateur
Commentaire de Panthouffle le 01/05/2007 21:45:11

Salut,

dans la première ligne, "alias Option PV dialog -m optionpv optionpv"

ton aliase a un truc de trop, colle "Option" avec "PV" ou vire le "PV" ou le "Option", parce qu'il y a un erreur.

pour les variables, quand tu veux les mettre à "OFF" tu peux les supprimer, ensuite tu n'as qu'à regarder si la variable existe pour savoir si elle est activée, ex :

  if ($did(3).state == 1) { did -e optionpv 4 | set %pvmessage on }
  if ($did(3).state == 0) { did -b optionpv 4 | set %pvmessage off }
  if ($did(6).state == 1) { set %pvferme on }
  if ($did(6).state == 0) { set %pvferme off }

devient :

  if (%pvmessage) { did -e optionpv 4 | unset %pvmessage }
  else { did -b optionpv 4 | set %pvmessage on }
  if (%pvferme) unset %pvferme
  else set %pvferme on

pour la vérification des variables dans les conditions j'suis pas certain qu'il n'y ait aucun risques : si tu double clic vite dans le check si les variables se changent bien...

ensuite tu peux adapter pour le "on join"
Le groupe quand est-ce que tu l'active ? ;(

signaler à un administrateur
Commentaire de Panthouffle le 01/05/2007 22:41:52

Je viens de me rendre compte que c'que j't'ai donné n'as pas trop de sens :

  if (%pvmessage) { did -e optionpv 4 | unset %pvmessage }
  else { did -b optionpv 4 | set %pvmessage on }

devient :

  if (%pvmessage) { did -b optionpv 4 | unset %pvmessage }
  else { did -e optionpv 4 | set %pvmessage on }

en gros juste une erreur de b/e :(

signaler à un administrateur
Commentaire de Nitrite59 le 07/05/2007 13:31:50

Ca à l'air de fonctionner même si les scripts plus ou moins récents comportent tous un anti-pv :) Bonne continuation.

signaler à un administrateur
Commentaire de doob666 le 09/05/2007 10:34:15

question comme ça en passant. qu'as t'il de neuf ton code? améliore le, et repost le. trouve de l'innovation.

signaler à un administrateur
Commentaire de Nitrite59 le 09/05/2007 12:38:36

Oui innove le genre quand on se met en absent, telle message apparaisse, ainsi que pour occupé, parti manger etc... j'espére être compris ^^ ca serait vraiment chouette d'avoi ces options là.

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Anti PV [ par l1solent ] Salut !ON ^1:TEXT:*:?: haltdefMe permet de bloquer mes pv mais j'ai tjr la fenetre de la personne qui s'ouvre pour m'annoncer que j'ai un pv meme si r recherche un anti pv activable au secourrrrrrrrrrrsssssssss !!!! [ par jlbnb ] je voudrais un anti pv ke je pourais activé a ma demande  aidez moi je suis desespere lolbisous a tous je trouve votre site trop top et ca m Anti pub [ par Fahdos ] Bon voila j'ai fait beaucoup de rechercge dans se site sans trouver aucun source avec l'option favorable, bon c'est option ou ( variable) c'est dans l anti-pv flood sur ouverture [ par Fabfranck ] J'ai commencer un petit code bien simple et je me demande vraiment pourquoi il ne fonctione pas. Il a pour but de mettre en ignore *!*@* lorsque je re probleme de relance de pv (timer) [ par J4Gu4R ] voila j'ai un petit code :#relance onon 1:text:*:?:{  if ($nick == %relance_pv) {     .timer $+ $nick off    echo -s $timestamp $+(<,$nick,>) $1 détecteur badword en PV qui Kick,ignore et ferme le PV [ par freenaute ] bonjour tous !J'ai "compilée" cette remote qui détecte des badwords dans mes PV et répond par kick,donne la raison puis ignore et ferme le PV et ban l changer le nom d'un pv [ par Camanche ] Bonjour, je voudrais changer l'apparence des pvs. Je vous donne un exemple pour comprendre, quand vous ouvrez un pv, la fenêtre s'appelle "$nick($adre Anti-Mass join Anti-clone [ par Soprano71 ] bonjour a tous ! y aurai t'il un anti clone en dial et anti-mass join  svp ? Anti Multiple Querry [ par LePunisherQc ] Bonjour, je suis nouveau dans le scripting et j'aimerais savoir comment faire pour désactiver les multiples querry. Je m'explique je voudrais faire un Un code source pour Pv la personne qui envoi un mot ou un groupe de mot sur le salon general [ par romar02 ] Voila il me faudrait un code source pour Pv Toutes personnes qui disent un mots enregistrer dans le code !Par exemple : Le mot est "5 vs 5" ou "5 v 5"


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,468 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.