Дать 5000 золотых (item_id = 57).
В лоб:
//5000 57 self target@ p.items_add
Или:
//5000 57 target-player-or-me p.items_add
Через выполнение скрипта в контексте выбранного игрока:
//"5000 57 items_add" self target@ do-player
или
//[[ 5000 57 items_add ]] self target@ do-player
(в первом случае будет интерпретация введённого кода, во втором - компилция).
Наконец, если такое нужно делать часто, можно определить команду:
//: admin_give_item "spawn" check-access 2 args int swap int 1 max target-player-or-me p.items_add ;
а потом использовать в виде:
//give_item 57 5000
число предметов можно не указывать, тогда будет выдан один. Если цель не выбрана или выбран не игрок, то предмет будет выдан админу.
Та же команда, расписанная "цивильно" выглядеть будет так (можно включить, скажем, в jbforth/admin/players/main.f):
code forth
: admin_give_item ( "item_id [count]" -- )
"spawn" check-access \ Проверяем доступ. Если нет - то слово будет прервано.
2 args \ Из строки получаем два параметра (если был введён только один, то второй будет null)
int \ Первый из строки в число (item_id)
swap \ Меняем на стеке их местами
int \ count из строки или null в число
1 max \ Не меньше одного итема (если число не вводилось)
target-player-or-me \ Цель - игрок или мы сами
p.items_add \ Добавить предмет ( count item_id player )
;
(код не тестирован, возможны ошибки или опечатки)