sia 0 Жалоба Опубликовано 29 января, 2023 Отличный скрипт без заморочек! Сам определяет деревья в радиусе и идёт рубить. В 2х местах меняем Orion.UseObject('0x70EA3902'); на свой топор и всё! Работы скрипта как раз хватает на 2 часа, до капчи и чтоб дать поесть. В орионе я не силён, поэтому, кто допилит до ума поделится, + в карму! function CutTreeByWorldLoc() { Orion.ClearJournal(); var treeWorldLocation = FindTreesInSurrArea(); for(i=0;i<treeWorldLocation.length;i++){ Orion.WalkTo(treeWorldLocation[i][0],treeWorldLocation[i][1],0); Orion.Wait(1000); Orion.UseObject('0x70EA3902'); Orion.WaitTargetTile('tree',treeWorldLocation[i][0],treeWorldLocation[i][1],0); Orion.Wait(40000); if(Orion.InJournal('into your pack|but fail to', 'sys|my') != null){ LumberAgain(treeWorldLocation[i][0],treeWorldLocation[i][1]); } if(Player.Weight() >= Player.MaxWeight()+14000) break; } } function FindTreesInSurrArea() { var maxSearchDistance=30; var treeWorldLocations=createArr(200,200); var trueWorldLocCounter=0; for(i=(Player.X()-maxSearchDistance);i<(Player.X()+maxSearchDistance+1);i++){ for(j=(Player.Y()-maxSearchDistance);j<(Player.Y()+maxSearchDistance+0);j++){ //Orion.Print("Searching X= " + i + "and Y= " + j + " location"); if(Orion.ValidateTargetTile('tree', i, j)){ Orion.Print("Found a tree, location is saved as " + (trueWorldLocCounter+1)); treeWorldLocations[trueWorldLocCounter][0]=i; treeWorldLocations[trueWorldLocCounter][1]=j; trueWorldLocCounter++; } } } treeWorldLocations.length=trueWorldLocCounter; return treeWorldLocations; } function createArr(x, y) { var arr = new Array(x); for (var i = 0; i < x; i++) { arr[i] = new Array(y); } return arr; } function LumberAgain(x,y) { var text = 'in your pack|but fail to|not enough wood|That is too far away|guardians are angry|no line of sight|have found some deadwood|place any wood into'; while (!Player.Dead()){ Orion.UseObject('0x70EA3902'); Orion.WaitTargetTile('tree',x,y,0); var msg = Orion.WaitJournal(text, Orion.Now(), Orion.Now() + 2000, 'sys|my'); if(msg !=null) break; Orion.Wait(100); } Orion.ClearJournal(); } Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты