Ir para conteúdo

[Função Lua] Clipboardcopy(Text) - Funciona Com Coordenadas


Posts Recomendados

arhPioO.png

Nome: Clipboardcopy(Text)
Versão: 1.0
Código: Doggynub
Forum Origem: OTLand.net
Versão: Não testado ainda.
Descrição: Esta função copia para a área de transferência (clipboard) as coordenadas do player, como se estive feito um Ctrl+C..
Bom vamos ao tutorial:

 

luascript.h:

Procure por:

static int32_t luaStdSHA512(lua_State* L);

E adicione isso abaixo:
static int32_t luaClipboardCopy(lua_State* L);

luascript.cpp:
Procure por:
//setCreatureMaxMana(cid, mana)

Cole isso abaixo:

//clipboardCopy(text)
lua_register(m_luaState, "clipboardCopy", LuaInterface::luaClipboardCopy);

Então encontre:
int32_t LuaInterface::luaSetCreatureMaxMana(lua_State* L)

E adicione isso abaixo:
int32_t LuaInterface::luaClipboardCopy(lua_State* L)
{
//clipboardCopy(text)
std::string text = popString(L);
if(text != "")
{
const char* output = text.c_str();
const size_t len = strlen(output) + 1;
HGLOBAL hMem = GlobalAlloc(GMEM_MOVEABLE, len);
memcpy(GlobalLock(hMem), output, len);
GlobalUnlock(hMem);
OpenClipboard(0);
EmptyClipboard();
if(SetClipboardData(CF_TEXT, hMem) != NULL)
lua_pushboolean(L,true);
else
lua_pushboolean(L,false);


CloseClipboard();
}

return 1;
}


Exemplo de utilização:

function onLook(cid, thing, position, lookDistance)
if getPlayerGroupId(cid) >= 4 then
local str = string.gsub("{x = |x|, y = |y|, z = |z|, stackpos = |stackpos|}","|(.-)|",function(a) return position[a] end)
if not clipboardCopy(str) then
print("error in copying to clipboard, no data copied.")
end
end
return true
end
Editado por MatheusEnjoy
Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...
×
×
  • Criar Novo...