PDA

Просмотр полной версии : doCommand


jnevra
09.07.2008, 12:30
А где можно посмотреть список команд, которые можно прописывать в docommand? Вроде где-то в tables внутри ОК?
И можно ли в тело добавлять еще условия?
Например target и тп (хочу настроить телепорт приста-бота при смерти персонажа, если на бота перекинется много мобов).

4epT
09.07.2008, 21:43
Всё что щас доступно:

disabled
whenIdle
manualAI
hp
sp
homunculus_hp
homunculus_sp
homunculus_dead
equip_leftAccessory
equip_rightAccessory
equip_leftHand
equip_rightHand
equip_robe
aggressives
partyAggressives
stopWhenHit
whenFollowing
whenStatusActive
whenStatusInactive
onAction
notOnAction
spirit
timeout
inLockOnly
notWhileSitting
notInTown
monsters
defendMonsters
notMonsters
inInventory
inCart
whenGround
whenNotGround
whenPermitSkill
whenNotPermitSkill
whenFlag
whenNotFlag
onlyWhenSafe
inMap
notInMap
whenEquipped
whenNotEquipped
zeny
whenWater

описание некоторых функций на английском (http://hakore.bot.nu/openkore/manual/view.php?p=config.txt#Self%20Conditions)

Добавлено через 32 секунды
перенесено в "макросы и плагины"

jnevra
10.07.2008, 07:20
Спасибо, только я еще спрашивала про то, что добавляется напротив doCommand <....> {

4epT
11.07.2008, 01:05
ну скажем вот пример:
#учим бота садиться и вставать по значению СП:
doCommand sit {
sp < 50%
aggressives 0
notWhileSitting 1
}
doCommand stand {
sp > 90%
timeout 10
}

Ещё интересная конструкция это когда выполняется несколько команд последовательно:
#учим бота радоваться когда в кармане больше 100к
doCommand sit;;stand {
zeny > 100000
timeout 1
}

ЗЫ: всё писалось на коленке и естественно не тестировалось ;)

Gans
14.07.2008, 18:48
Формально так:

doCommand команда {
условия
timeout сс
}

команда - любая консольная команда ОК, или их цепочка с разделителем ;;
условия - любые условия, проверяемые функцией sub checkSelfCondition (в файле каталог_ОК\src\Misc.pm).
timeout сс - задержка в секундах перед повторным вызовом