Vielleicht findet ja der eine oder andere von euch Verwendung dafür.
;================================================= ================
;Skript zum Aufteilen von Loot
;Author Hirad Coldheart
;Benoetigte Utensilien:
;Easyuo 1.5
;Pro Person einen Bag
;1 Bag fuer den nichtteilbaren Lootrest
;Wichtig: Diese Bags duerfen sich nicht im
; Lootbag befinden
;in der 14. Zeile muss dein Name stehen
;================================================= ================
deletejournal
set %checkvar 0
set %j 0
set %my_name Hirad_Coldheart ;hier muss dein Name hin
event sysmessage { Auf wieviele Personen soll der Loot }
event sysmessage { aufgeteilt werden ? (max 9) }
set %jindex #jindex
wait 2s
;Einlesen der Anzahl der Leute
;Abspeichern dieser Zahl in
;%personen_anzahl
while ( %checkvar = 0 )
{
scanloop:
if ( %jindex <= #jindex ) && ( %checkvar = 0 )
{
scanjournal %jindex
;wenn es fuer mehr als 9 Leute auch gehen
;soll muesste man das anders machen, erkennt
;mit scanjournal nur die erste Zahl
for %j 1 9
{
if %my_name , :_ , %j in #journal
{
; Personenanzahl wird um 1 erhoeht damit der Restbag
;auch dabei ist
set %personen_anzahl %j
set %beutel_anzahl %personen_anzahl + 1
set %checkvar 1
event sysmessage { } ;fuer die optik ne zeile frei
event sysmessage { %personen_anzahl Personen }
}
}
set %jindex %jindex + 1
Goto scanloop
}
;Wenn keine Zahl fuer die Personen bestimmt wurde
;kurz warten und noch mal schauen, solange bis
;gueltige Zahl
if ( %checkvar = 0 )
{
event sysmessage { } ;fuer die optik ne zeile frei
event sysmessage { Bitte Anzahl der Personen waehlen }
wait 3s
}
}
;Beutel bestimmen auf die aufgeteilt werden soll
;der letzte Beutel ist der mit dem Restloot
event sysmessage { } ;fuer die optik ne zeile frei
event sysmessage { Jeder Person einen Bag }
event sysmessage { zuweisen & Restbag }
event sysmessage { bestimmen }
wait 2s
for %i 1 %beutel_anzahl
{
set %beutel . %i YC
set #ltargetid YC
set #ltargetkind 1
;solange kein gueltiger Beutel gewaehlt
;wurde, wieder danach fragen
event sysmessage { } ;fuer die optik ne zeile frei
event sysmessage { Beutel %i }
while ( %beutel . %i = YC )
{
set #targcurs 1
wait 3s
set %beutel . %i #ltargetid
}
event sysmessage { Beutel %i ID: %beutel . %i }
}
;lootbag waehlen
event sysmessage { } ;fuer die optik ne zeile frei
event sysmessage { Lootbag waehlen: }
set %lootbag YC
set #ltargetid YC
set #ltargetkind 1
while ( %lootbag = YC )
{
set #targcurs 1
wait 3s
set %lootbag #ltargetid
}
;sicherstellen dass im lootbag
;alle sachen von 1 typ gestapelt sind
lootbagsort:
findItem * C_ , %lootbag
if #findkind <> -1
{
exevent Drag #findid #findstack
wait 10
exevent Dropc %beutel1
wait 10
GoTo lootbagsort
}
zurueckinlootbag:
findItem * C_ , %beutel1
if #findkind <> -1
{
exevent Drag #findid #findstack
wait 10
exevent Dropc %lootbag
wait 10
GoTo zurueckinlootbag
}
event sysmessage { } ;fuer die optik ne zeile frei
event sysmessage { Lootbag sortiert }
;Aufteilen des Lootes
Lootaufteilung:
findItem * C_ , %lootbag
if #findkind <> -1
{
;Berechne Rest
set %rest #findstack % %personen_anzahl
;den gefundenen stack & die gefundene id merken
set %findtype #findtype
set %findstack #findstack
set %teiler #findstack / %personen_anzahl
;event sysmessage { %rest Rest %findtype findid }
if ( %rest <> 0 )
{
;falls Rest bleibt in den Restbag legen
exevent Drag #findid %rest
wait 10
;nicht teilbarer Rest kommt in den
;dafuer vorgesehenen Bag
exevent Dropc %beutel . %beutel_anzahl
wait 10
}
;Jeder bekommt gleich viel
event sysmessage { %teiler Stueck von %findtype pro Person }
for %k 1 %personen_anzahl
{
findItem %findtype C_ , %lootbag
if #findkind <> -1
{
;event sysmessage { %k Runde %teiler Stueck }
exevent Drag #findid %teiler
wait 10
exevent Dropc %beutel . %k
wait 10
}
else
{
;event sysmessage { Objekt konnte im Lootbag nicht gefunden werden }
}
}
GoTo Lootaufteilung
}
else
{
event sysmessage { } ;fuer die optik ne zeile frei
event sysmessage { Loot wurde erfolgreich auf %personen_anzahl Personen
event sysmessage { aufgeteilt }
}
stop
