Пример на коленке без проверок(а они нужны):
Добавляем эту функцию в любой файл, лучше в forge.lua
Функция получения очков чести и обмена на предмет с ID 1
function chaos_point(role,npc)
local Medal = GetChaItem2 ( role , 2 , 3849 ) -- получаем медаль отваги
local chaos_point = GetItemAttr ( Medal , ITEMATTR_MAXENERGY ) --получаем значение очков хаоса
if chaos_point > 5 then -- если хаос поинтов больше 5 то
chaos_point = chaos_point - 5 -- отнимаем 5 очков
GiveItem ( role , 0 , 1 , 1 , 4 ) -- выдаем предмет
SetItemAttr ( Medal , ITEMATTR_MAXENERGY , chaos_point) -- обновляем кол-во ОХ
end
end
Добавляем эту функцию в NPCScript.lua
function MsgProc( character, npc, rpk, page, trade, missionlist, exchangeData )
...
if item.func == JumpPage then
return JumpPage( character, npc, page, item.p1 ) --после этой строчки
elseif item.func == chaos_point then
return chaos_point(character,npc)
...
end
Используем функцию у нпс
function leo_talkzz()
Talk( 1, "Если утебя много ОХ я обменяю их на предмет с ID 1.")
Text( 1, "Обменять очки Хаоса",chaos_point)
end
Я не помню есть ли уже написанные функции, мб они и есть, копаться не стал.