Auto join

Contenu du snippet

Uploader juste cette remote dans votre script :)

Source / Exemple :


;################################################
;#                                                                                                                   #
;#                                        Auto Join By Atlantis                                           #
;#                                                                                                                   #
;################################################

alias autojoin { /dialog -m autojoin autojoin }

dialog autojoin {
  title "Auto Join (Atlantis)"
  size -1 -1 170 261
  button "Enregistrer", 1, 7 210 155 24, ok
  box "Option / Entrer un channel", 2, 2 120 166 138
  list 3, 8 17 155 100 
  edit "", 4, 8 135 154 22, autohs
  button "&Ajouter", 5, 7 160 74 24
  button "&Modifier", 6, 87 160 74 24
  button "&Supprimer", 7, 7 185 74 24
  button "&Joindre tout", 8, 87 185 74 24
  check "Activer / Désactiver", 10, 9 235 120 21
  box "Salons", 11, 2 2 166 117
}

on *:dialog:autojoin:init:*:{
  did -b autojoin 5,6,7
  if ($group(#autojoin) == ON) { did -c autojoin 10 }
  if (%autojoin.delai !== $null) { did -a autojoin 13 %autojoin.delai }
  autojoin.update
}

on *:dialog:autojoin:edit:*:{
  if ($did(4) == $null) { did -b autojoin 5,6 }
  else { did -e autojoin 5,6 }
  if ($did(3).sel == $null) { did -b autojoin 6 }
  else { did -e autojoin 6 }
  if ($left($did(4),1) !== $chr(35)) { var %autojoin.edit = $chr(35) $+ $did(4) }
  else { var %autojoin.edit = $did(4) }
  if ($findtok(%autojoin.canaux,%autojoin.edit,0,44) == 1) { did -b autojoin 5,6 }
  if ($did == 13) {
    if ($did(13) !isnum) { did -r autojoin 13 | unset %autojoin.delai }
    else { set %autojoin.delai $did(13) }
} }

on *:dialog:autojoin:sclick:*:{
  if ($did == 5) {
    if ($left($did(4),1) !== $chr(35)) { var %autojoin.ajout = $chr(35) $+ $did(4) }
    else { var %autojoin.ajout = $did(4) }
    set %autojoin.canaux $sorttok($addtok(%autojoin.canaux,%autojoin.ajout,44),44)
    autojoin.update
  }
  elseif ($did == 6) {
    if ($left($did(autojoin,4),1) !== $chr(35)) { var %autojoin.modif = $chr(35) $+ $did(4) }
    else { var %autojoin.modif = $did(4) }
    set %autojoin.canaux $sorttok($reptok(%autojoin.canaux,$gettok(%autojoin.canaux,$did(3).sel,44),%autojoin.modif,1,44),44)
    autojoin.update
  }
  elseif ($did == 7) {
    set %autojoin.canaux $remtok(%autojoin.canaux,$gettok(%autojoin.canaux,$did(3).sel,44),44)
    autojoin.update
  }
  if ($did == 3 && $did(3).sel !== $null) { did -ra autojoin 4 $did(3,$did(3).sel) }
  elseif ($did == 8) { if ($server != $null) { autojoin.join } }
  elseif ($did == 10) {
    if ($did(10).state == 0) { .disable #autojoin }
    else { .enable #autojoin }
  }
  if ($did(3).sel == $null) { did -b autojoin 5,6,7 }
  else { did -e autojoin 6,7 }
  if ($did == 3) { did -b autojoin 6 }
}

;################################################
;#                                                                                                                   #
;#                                        Auto Join By Atlantis                                           #
;#                                                                                                                   #
;################################################

alias autojoin.update {
  did -r autojoin 3,4
  if (%autojoin.canaux !== $null) {
    did -e autojoin 8,10
    var %autojoin.loop.n = 1
    :loop
    did -a autojoin 3 $gettok(%autojoin.canaux,%autojoin.loop.n,44)
    inc %autojoin.loop.n
    if ($gettok(%autojoin.canaux,%autojoin.loop.n,44) !== $null) { goto loop }
  }
  else {
    unset %autojoin.canaux
    .disable #autojoin
    did -ub autojoin 8,10
} }

alias autojoin.join {
  var %autojoin.loop.n = 1
  while ($gettok(%autojoin.canaux,%autojoin.loop.n,44) !== $null) { 
    if (%autojoin.delai !== $null) { .timer 1 $calc(%autojoin.delai * %autojoin.loop.n) join $gettok(%autojoin.canaux,%autojoin.loop.n,44) }
    else { join $gettok(%autojoin.canaux,%autojoin.loop.n,44) }
    inc %autojoin.loop.n
} }

#autojoin off
on *:connect:autojoin.join
#autojoin end
}

Conclusion :


Il n'y a pas de beuge (Enfin je pence) @+, et laissé des commentairs pour me dire se que vous en pencé !

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.