%setVar no-join true; %addList allowed; %addListElement allowed marvinius; %addListElement allowed kajetanjohannes; %addListElement allowed eropster; %addListElement allowed Kargam; %addListElement allowed sunrise_xD; %setVars %getQuestLeader;; %if %checkForListElement allowed $player-name; == true goto start; %term; @start %msg all §rDu hast nun §bWorldedit.; %loadEvent block-click; %loadEvent block-break; %loadEvent chat; %goto wait; @wait %wait; %if $event == block-break && $player-item-type == WOOD_SPADE goto cancel; %if $event == chat goto checkarg0; %if $event == block-click && $player-item-type == WOOD_SPADE && $action == LEFT_CLICK_BLOCK goto setblockpos1; %if $event == block-click && $player-item-type == WOOD_SPADE && $action == RIGHT_CLICK_BLOCK goto setblockpos2; %if $event == player-leave goto giveup; %goto wait; @cancel %setVar cancel true; %goto wait; @syntax %speak $player-name §dWorldEdit §r-----------------------------------------; %speak $player-name §dWorldEdit §3%percent;set §r--> §7Setzt den ausgewählten Bereich auf eine Blockart; %speak $player-name §dWorldEdit §3%percent;undo §r--> §7Macht die letzte Aktion rückgängig; %speak $player-name §dWorldEdit §3%percent;replace §r--> §7Ersetzt im ausgewählten Bereich alle alten Blöcke durch die neuen.; %speak $player-name §dWorldEdit §3%percent;copy §r--> §7Speichert die Auswahl; %speak $player-name §dWorldEdit §3%percent;paste §r--> §7Kopiert die Auswahl; %speak $player-name §dWorldEdit §3%percent;clone §r--> §7Setzt den zu klonenden Bereich fest.; %speak $player-name §dWorldEdit §3%percent;clone confirm §r--> §7Klont die Auswahl korrekt.; %speak $player-name §dWorldEdit §3%percent;pos1 §r--> §7Setzt deine aktuelle Position auf Pos1; %speak $player-name §dWorldEdit §3%percent;pos2 §r--> §7Setzt deine aktuelle Position auf Pos2; %goto wait; @checkarg0 %if %getListElementAt args 0; == we && %getListSize args; == 1 goto syntax; %if %getListElementAt args 0; == pos1 && %getListSize args; == 1 goto setplayerpos1; %if %getListElementAt args 0; == pos2 && %getListSize args; == 1 goto setplayerpos2; %if %getListElementAt args 0; == undo && %getListSize args; == 1 && $undo == true goto undo; %if %getListElementAt args 0; == paste && %getListSize args; == 1 goto dopaste1; %if %getListElementAt args 0; == clone && %getListSize args; == 1 goto prepareclone; %goto check; @check %if $world1 == $world2 goto checks1; %speak $player-name §dWorldEdit §rDie Welten der ausgewählten Blöcke stimmen nicht überein bzw. die Ecken wurden nicht ausgewählt.; %goto wait; @checks1 %if %getListElementAt args 0; == clone && %getListSize args; == 2 goto checkclone; %if %getListElementAt args 0; == copy && %getListSize args; == 1 goto copy; %if %getListElementAt args 0; == set && %getListSize args; == 2 goto checkset; %if %getListElementAt args 0; == replace && %getListSize args; == 3 goto checkreplace; %goto syntax; @checkclone %if %getListElementAt args 1; == confirm || %getListElementAt args 1; == co goto doclone; %goto syntax; @checkset %if %isValidStack %getListElementAt args 1;; == true goto set; %speak $player-name §dWorldEdit §rDer angegebene Block ist nicht gültig.; %goto wait; @checkreplace %if %isValidStack %getListElementAt args 1;; == true && %isValidStack %getListElementAt args 2;; == true goto replace; %speak $player-name §dWorldEdit §rDer angegebene Block ist nicht gültig.; %goto wait; @setplayerpos1 %setVar x1 %coords $player-loc x;; %setVar y1 %coords $player-loc y;; %setVar z1 %coords $player-loc z;; %setVar world1 %coords $player-loc w;; %speak $player-name §dWorldEdit %concat §3Pos1: $x1 : $y1 : $z1;; %goto wait; @setplayerpos2 %setVar x2 %coords $player-loc x;; %setVar y2 %coords $player-loc y;; %setVar z2 %coords $player-loc z;; %setVar world2 %coords $player-loc w;; %speak $player-name §dWorldEdit %concat §3Pos2: $x2 : $y2 : $z2;; %goto wait; @setblockpos1 %setVar x1 %coords $block-loc x;; %setVar y1 %coords $block-loc y;; %setVar z1 %coords $block-loc z;; %setVar world1 %coords $block-loc w;; %speak $player-name §dWorldEdit %concat §3Pos1: $x1 : $y1 : $z1;; %goto wait; @setblockpos2 %setVar x2 %coords $block-loc x;; %setVar y2 %coords $block-loc y;; %setVar z2 %coords $block-loc z;; %setVar world2 %coords $block-loc w;; %speak $player-name §dWorldEdit %concat §3Pos2: $x2 : $y2 : $z2;; %goto wait; @copy %setVar aktion copy; %goto change; @replace %setVar aktion replace; %goto change; @set %setVar aktion set; %goto change; @change %if $aktion != copy goto override5; %addList copyblocktype; %addList copyblockdata; @override5 %if $aktion == copy goto override6; %removeList undoblocktype; %removeList undoblockdata; %removeList undoblockloc; %addList undoblocktype; %addList undoblockdata; %addList undoblockloc; @override6 %setVar world $world1; %setVar counter 0; %if $x1 < $x2 goto override1; %setVar helper $x2; %setVar x2 $x1; %setVar x1 $helper; @override1 %if $y1 < $y2 goto override2; %setVar helper $y2; %setVar y2 $y1; %setVar y1 $helper; @override2 %if $z1 < $z2 goto override3; %setVar helper $z2; %setVar z2 $z1; %setVar z1 $helper; @override3 %setVar helper null; %setVar x $x1; @start_x %setVar y $y1; @start_y %setVar z $z1; @start_z %setVar loc %concat $world : $x : $y : $z;; @doset %if $aktion != set goto doreplace; %addListElement undoblocktype %blockType $loc;; %addListElement undoblockdata %blockData $loc;; %addListElement undoblockloc $loc; %setBlock $loc %getListElementAt args 1;; %setVar counter %add $counter 1;; %goto override4; @doreplace %if $aktion != replace goto docopy; %if %blockType $loc; != %getListElementAt args 1; goto override4; #split requested %addListElement undoblocktype %blockType $loc;; %addListElement undoblockdata %blockData $loc;; %addListElement undoblockloc $loc; %setBlock $loc %getListElementAt args 2;; %setVar counter %add $counter 1;; %goto override4; @docopy %if $aktion != copy goto override4; %setVar pasteable true; %setVar xedgedistance %sub $x2 $x1;; %setVar yedgedistance %sub $y2 $y1;; %setVar zedgedistance %sub $z2 $z1;; %setVar xdistance %sub $x1 %coords $player-loc x;;; %setVar ydistance %sub $y1 %coords $player-loc y;;; %setVar zdistance %sub $z1 %coords $player-loc z;;; %addListElement copyblocktype %blockType $loc;; %addListElement copyblockdata %blockData $loc;; %setVar counter %add $counter 1;; %goto override4; @override4 %setVar z %add $z 1;; %if $z <= $z2 goto start_z; %setVar y %add $y 1;; %if $y <= $y2 goto start_y; %setVar x %add $x 1;; %if $x <= $x2 goto start_x; %if $aktion == copy goto override8; %setVar undo true; %speak $player-name §dWorldEdit §3Done: $counter blocks affected; %setVar aktion null; %goto wait; @override8 %speak $player-name §dWorldEdit §3Done: $counter blocks stored; %setVar topaste $counter; %setVar aktion null; %goto wait; @doclone %setVar x $x1; @start_x %setVar y $y1; @start_y %setVar z $z1; @start_z %setVar loc %concat $world : $x : $y : $z;; @doclone1 %if $cloneable == true goto doclone2; %speak $player-name §dWorldEdit §3Es wurde nichts zum Klonen gespeichert.; %goto wait; @doclone2 %addListElement undoblocktype %blockType $loc;; %addListElement undoblockdata %blockData $loc;; %addListElement undoblockloc $loc; %setVar aimloc %modLoc $takefromloc %setVar relloc %modLoc $takefromloc %blockClone $relloc $loc; %setVar counter %add $counter 1;; %setVar cloneable false; %goto override4; @dopaste1 %if $pasteable == true goto dopaste2; %speak $player-name §dWorldEdit §3Es wurde nichts zum Kopieren gespeichert.; %goto wait; @dopaste2 %setVar startloc %modLoc $player-loc $xdistance $ydistance $zdistance;; %removeList undoblocktype; %removeList undoblockdata; %removeList undoblockloc; %addList undoblocktype; %addList undoblockdata; %addList undoblockloc; %setVar i 0; %setVar x 0; @start1_x %setVar y 0; @start1_y %setVar z 0; @start1_z @pastelabel %setVar relloc %modLoc $startloc $x $y $z;; %addListElement undoblocktype %blockType $relloc;; %addListElement undoblockdata %blockData $relloc;; %addListElement undoblockloc $relloc; %setBlock $relloc %concat %getListElementAt copyblocktype $i; : %getListElementAt copyblockdata $i;;; %setVar i %add $i 1;; %if $i < %sub %getListSize copyblocktype; $topaste; goto pastelabel; %setVar z %add $z 1;; %if $z <= $zedgedistance goto start1_z; %setVar y %add $y 1;; %if $y <= $yedgedistance goto start1_y; %setVar x %add $x 1;; %if $x <= $xedgedistance goto start1_x; %setVar undo true; %speak $player-name §dWorldEdit §3Done: $i blocks affected; %goto wait; @prepareclone %setVar world $world1; %if $x1 < $x2 goto override9; %setVar helper $x2; %setVar x2 $x1; %setVar x1 $helper; @override9 %if $y1 < $y2 goto override10; %setVar helper $y2; %setVar y2 $y1; %setVar y1 $helper; @override10 %if $z1 < $z2 goto override11; %setVar helper $z2; %setVar z2 $z1; %setVar z1 $helper; @override11 %setVar helper null; %setVar takefromloc %concat $world : $x1 : $y1 : $z1;; %setVar toclonex %sub $x2 $x1;; %setVar tocloney %sub $y2 $y1;; %setVar toclonez %sub $z2 $z1;; %setVar cloneable true; %speak $player-name §dWorldEdit §3Setze nun per Linksklick mit der Holzschaufel den untersten südwestlichsten Punkt.; %goto wait; @undo %setVar i 0; @undolabel %setVar type %getListElementAt undoblocktype $i;; %setVar data %getListElementAt undoblockdata $i;; %setVar loc %getListElementAt undoblockloc $i;; %setBlock $loc %concat $type : $data;; %setVar i %add $i 1;; %if $i < %getListSize undoblocktype; goto undolabel; %removeList undoblocktype; %removeList undoblockdata; %removeList undoblockloc; %setVar undo false; %speak $player-name §dWorldEdit §3Done: $i blocks affected; %goto wait; @giveup %term;