Postado Agosto 15, 2015 9 anos Fala galera... To tentando fazer um NPC que cria um item no DP de um player (não é o cid, outro player). Pra ser mais específico, é uma carta com um texto. To usando uma distro do OTHire 7.72 que tem pouquíssimas funções, então muitas das funções mais utilizadas por aí não funcionam aqui. Tem uma função doSetItemText(uid, "text") aqui que dá pra usar pra por o texto, e também o comando SendItemTo(name, uid, townid). Mas não to conseguindo criar o item. Tentei usar o doCreateItem mas não deu certo, posso ter feito algo errado. Alguém tem alguma dica? Vlw
Postado Agosto 15, 2015 9 anos Não sei como esse NPC vai funcionar, nem conheço as funções desta versão, entretanto escrevi um pequeno bloco de código como exemplo do que poderia ser feito: local letter_id = xxx --ID da carta. local text = "texto" --Texto da carta. if msgcontains(msg, "player") then selfSay("Tell me the player's name.") talkState[talkUser] = 1 elseif talkState[talkUser] == 1 then local player = getPlayerByName(msg) talkState[talkUser] = 0 if isPlayer(player) then local letter = doCreateItemEx(letter_id) doSetItemText(letter, text) SendItemTo(msg, letter, getPlayerTown(player)) else local query = db.getResult("SELECT town_id FROM players WHERE name = "..msg) if query:getID() == -1 then return selfSay("This player doesn't exist.") and query:free() end local letter = doCreateItemEx(letter_id) doSetItemText(letter, text) SendItemTo(msg, letter, query:getDataInt("town_id")) query:free() end selfSay("You sent "..msg.." a letter.") end O jogador diria "player" ao NPC, e depois diria o nome do player que receberia a carta. Editado Agosto 19, 2015 9 anos por zipter98 (veja o histórico de edições) não respondo pms solicitando suporte em programação/scripting
Postado Agosto 17, 2015 9 anos Autor o sendItem não tá funcionando... fui olhar na source melhor e tá como adminCommand... por isso acho que não funciona colocando no script... Alguma outra ideia de como fazer pra mandar pro DP??
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.