; | / \ | . ; _ -O- . ) (( )) ( -O- ; (@) | + /|\ ))_(( /|\ | . ; |-| / | \ (/\|/\) / | \ (@) ; | | --------------------------/--|-voV---\`|'/--Vov-|--\---------------------------|-| . ; |-| '^` (o o) '^` | | ; | | `\Y/' |-| ; |-| _______ __ __ __ _______ __ __ | | ; | | | | | | |_|__|.--------.---.-.| _ | |__|.---.-.-----.-----.---.-. |-| . o ; |-| | | | | _| || | _ || | | || _ | |-- __| _ | | | ; | | |_______|__|____|__||__|__|__|___._||___|___|__|__||___._|__|__|_____|___._| |-| ; |_|________________________________________________________________________________| | ; (@) l /\ / ( ( \ /\ l `\|-| . ; o l / V \ \ V \ l + (@) ; l/ _) )_ \I + ; + `\ /' ; ; Script Name: Auto-Hider ; Author: Sthil Lauda ; Version: 1.2 ; Client Tested with: 2.0.3 ; EUO version tested with: EasyUO 1.5 Version 243 ; Shard: Ultima Alianza (¡Hasta la muerte!) ; Revision Date: 23-11-2018 ; Public Release: 04/01/2019 ; Global Variables Used: ; Purpose: Oculta el PJ automáticamente, si es revelado, incluso si llevas una linterna equipada. ;================================== set %version 1.2 ; set #SYSMSGCOL 89 event sysmessage Auto-Hider %version wait 40 set %linterna_apagada IYD set %linterna_encendida VXD ; ;======================================================== ; ; ******************* LOOP PRINCIPAL ******************** ; ;======================================================== ; loop: gosub check_muerto if ( H in #CHARSTATUS || #TARGCURS = 1 || #LLIFTEDKIND = 1 ) ; Si ya estamos ocultos, o vamos a hacer click en algo, o estamos levantando un objeto, entonces no hacemos nada. { gosub encencerLinterna wait 20 goto loop } else { if ( H Notin #CHARSTATUS && #TARGCURS = 0 && #LLIFTEDKIND = 0 ) ; Si no estamos ocultos, y no vamos a hacer clicks, ni a levantar nada, entonces nos ocultamos... { gosub apagarLinterna event macro 13 21 ; Use SKILL Hiding gosub waitForSysVar CHARSTATUS = H 50 } } goto loop ; ;======================================================== ; ; ***************** FIN LOOP PRINCIPAL ***************** ; ;======================================================== ; sub check_muerto ; <==============================> _checkDead: if #CHARGHOST = Yes { wait 1 goto _checkDead } return sub encencerLinterna finditem %linterna_apagada C_ , #CHARID if #FINDCNT > 0 { set #LOBJECTID #FINDID event macro 17 } else { finditem %linterna_apagada C_ , #BACKPACKID if #FINDCNT > 0 { set #LOBJECTID #FINDID event macro 17 } } return sub apagarLinterna finditem %linterna_encendida C_ , #CHARID if #FINDCNT > 0 { set #LOBJECTID #FINDID event macro 17 } return sub waitForSysVar ; <==============================> if %0 < 4 || %4 = N/A set %4 %_defaultWaitForTimeout if %0 < 5 set %5 return set %4 #sCnt2 + %4 _waitForSysVar: set % . %5 # . %1 %2 %3 if ! % . %5 && #sCnt2 < %4 { Wait 1 goto _waitForSysVar } return