Добыча руды (Mining) обкапывает вокруг себя без ходьбы: различия между версиями
Внешний вид
Support (обсуждение | вклад) Нет описания правки |
Support (обсуждение | вклад) Нет описания правки |
||
| Строка 43: | Строка 43: | ||
} | } | ||
var msg = Orion.WaitJournal(text, now, now + | var msg = Orion.WaitJournal(text, now, now + 9000, 'my|sys'); | ||
if (msg != null) | if (msg != null) | ||
| Строка 49: | Строка 49: | ||
tryingCount++; | tryingCount++; | ||
if (msg.FindTextID() > 3 | if (msg.FindTextID() > 3 || msg.FindTextID() <= 1 || tryingCount >= 20) | ||
break; | break; | ||
} | } | ||
Orion.WarMode(false); | Orion.WarMode(false); | ||
Orion.Wait( | Orion.Wait(200); | ||
} | } | ||
} | } | ||
Версия от 07:16, 14 мая 2025
Скрипт на добычу руды. Персонаж стоит на месте и обкапывает все тайлы вокруг себя в автоматическом режиме, как только руда заканчивается сообщает что необходимо переместить персонажа и заново запустить скрипт.
Автор скрипта: Hotride
function UsePickaxe(_private)
{
if (!Orion.UseType('0x0E85', 'any', self, false))
{
if (!Orion.UseType('0x0E85'))
{
Orion.Print('0x0021', 'Your tool is gone!');
return false;
}
}
return true;
}
function Mining()
{
var text = 'в свой рюкзак|in your pack|Вы расшатываете несколько камней, но не можете найти|You loosen some rocks but fail to find|Это слишком далеко|That is too far away|Цель находится вне прямой видимости|Target is not in line of sight|Здесь нет руды, которую можно было бы добывать|There is no ore here to mine|Try mining in rock';
for (var x = -2; x <= 2; x++)
{
for (var y = -2; y <= 2; y++)
{
if (!Orion.ValidateTargetTileRelative('mine', x, y, 0))
continue;
var tryingCount = 0;
while (true)
{
var now = Orion.Now();
Orion.WaitTargetTileRelative('mine', x, y, 0);
if (!UsePickaxe(0))
{
Orion.Print(0x0021, 'Where is your pickaxe?!?');
return;
}
var msg = Orion.WaitJournal(text, now, now + 9000, 'my|sys');
if (msg != null)
{
tryingCount++;
if (msg.FindTextID() > 3 || msg.FindTextID() <= 1 || tryingCount >= 20)
break;
}
Orion.WarMode(false);
Orion.Wait(200);
}
}
}
Orion.CharPrint(self, '0x0044', 'Обкапывание завершено, перейдите на другую точку и перезапустите скрипт.');
}