Anderson Fabris Posted July 5, 2019 at 10:34 PM Share Posted July 5, 2019 at 10:34 PM Boa Noite Comunidade. Gostaria de pedir a vocês uma ajuda, se possível compartilhar uma quest de KILL. - Quando o jogador matar outro dentro do jogo, contabiliza +1 kill na tabela " player.kills " Apenas essa função, matou, contabilizou. Alguém teria ela? Agradeço de coração. Link to comment Share on other sites More sharing options...
Anderson Fabris Posted July 6, 2019 at 04:24 PM Author Share Posted July 6, 2019 at 04:24 PM Bom vamos lá, Estou tentando usar: Função e Quest, mas não tá dando bom, alguém pra me ajudar? Spoiler function kills(z) os.execute("mysql -u root player --execute=\"UPDATE player SET kills = kills + ".. z .." WHERE id = ".. pc.get_account_id() ..";'") end quest kills begin state start begin when kills begin syschat("Você matou um Jogador! Foi Somado em seu Ranking PVP") kills(1) end end end 1 Link to comment Share on other sites More sharing options...
GODSPEED Posted July 6, 2019 at 06:10 PM Share Posted July 6, 2019 at 06:10 PM 1 hora atrás, Anderson Fabris disse: Bom vamos lá, Estou tentando usar: Função e Quest, mas não tá dando bom, alguém pra me ajudar? Ocultar conteúdo function kills(z) os.execute("mysql -u root player --execute=\"UPDATE player SET kills = kills + ".. z .." WHERE id = ".. pc.get_account_id() ..";'") end quest kills begin state start begin when kills begin syschat("Você matou um Jogador! Foi Somado em seu Ranking PVP") kills(1) end end end troca : when kills begin por : when kill with npc.is_pc() begin 1 Link to comment Share on other sites More sharing options...
Anderson Fabris Posted July 6, 2019 at 08:17 PM Author Share Posted July 6, 2019 at 08:17 PM (edited) 2 horas atrás, GODSPEED disse: troca : when kills begin por : when kill with npc.is_pc() begin Agora ele da o aviso, porém não adiciona o KILL na tabela do mysql. "/ Não contabiliza. Spoiler quest kill begin state start begin when kill with npc.is_pc() begin syschat("Você matou um Jogador! Foi Somado em seu Ranking PVP") local DB_FH = "USR" local DB_JS = "SENHA" local SE = 1 local ID = pc.get_kills() local QUERY = "UPDATE player.player SET kills = kills + "..SE.." WHERE id = "..ID..";" os.execute("mysql --host=localhost --user="..DB_FH.." --password="..DB_JS.." --execute='"..QUERY.."'") end end end Edited July 6, 2019 at 08:33 PM by Anderson Fabris Link to comment Share on other sites More sharing options...
[Admin] tierrilopes Posted July 6, 2019 at 08:43 PM Share Posted July 6, 2019 at 08:43 PM Tu NUNCA queres usar "os.execute". Utiliza uma função de quest já existente que atualize a base de dados como guia e edita-a. Para fazeres uma função do género: pc.add_kill() Link to comment Share on other sites More sharing options...
Anderson Fabris Posted July 6, 2019 at 08:45 PM Author Share Posted July 6, 2019 at 08:45 PM 1 minuto atrás, tierrilopes disse: Tu NUNCA queres usar "os.execute". Utiliza uma função de quest já existente que atualize a base de dados como guia e edita-a. Para fazeres uma função do género: pc.add_kill() Consegues ser mais detalhado e corrigir a quest em si ai em cima? por favor? seu conhecimento é bem mais avançado que o meu. Link to comment Share on other sites More sharing options...
[Admin] tierrilopes Posted July 6, 2019 at 09:22 PM Share Posted July 6, 2019 at 09:22 PM Olá, o que me referi era de criar nova função no game. Estou no telemóvel e não posso aceder bem, deve ser algo deste género: ALUA (pc_add_kill){ LPCHARACTER ch = CQuestManager::instance().GetCurrentCharacterPtr(); if (!ch) { return 0; } //get player ID DWORD pid = ch->GetPlayerID(); //add +1 to player.kill std::auto_ptr<SQLMsg> pmsg(DBManager::instance().DirectQuery("UPDATE player.player SET kills = kills + 1 WHERE id=%u", pid)); return 1; } 1 Link to comment Share on other sites More sharing options...
Anderson Fabris Posted July 6, 2019 at 09:45 PM Author Share Posted July 6, 2019 at 09:45 PM 22 minutos atrás, tierrilopes disse: Olá, o que me referi era de criar nova função no game. Estou no telemóvel e não posso aceder bem, deve ser algo deste género: ALUA (pc_add_kill){ LPCHARACTER ch = CQuestManager::instance().GetCurrentCharacterPtr(); if (!ch) { return 0; } //get player ID DWORD pid = ch->GetPlayerID(); //add +1 to player.kill std::auto_ptr<SQLMsg> pmsg(DBManager::instance().DirectQuery("UPDATE player.player SET kills = kills + 1 WHERE id=%u", pid)); return 1; } Entendi, top demais, aonde eu adiciono? na questlib.lua? você conseguiria fazer este sistema e postar? Vejo que muita gente procura essa quest, ou função, e é impossível achar, você postando ela funcionando , teremos em GLOBAL escala uma quest bastante procurada. Agradeço de coração e se haver custo eu arco com ele. Se possível explicar detalhadamente, +1 1 Link to comment Share on other sites More sharing options...
Anderson Fabris Posted July 7, 2019 at 12:50 AM Author Share Posted July 7, 2019 at 12:50 AM (edited) Spoiler --- Sistema de Kills --- function give_kills(mykills) os.execute("mysql -u root --password='SENHA' player --execute='UPDATE player SET kills = kills + ".. mykills .." WHERE id = ".. pc.get_name() ..";'") end --- Fim do Sistema de Kills --- ----- QUEST quest give_kill begin state start begin when kill with npc.is_pc() begin syschat("Você matou um Jogador! Foi Somado em seu Ranking PVP") give_kills(1) end end end Também não está dando certo, não sei oque se passa :X alguém pode ajudaR? ----SYSSER SetKillerMode Update [ADM]annndii[1] Edited July 7, 2019 at 01:22 AM by Anderson Fabris Link to comment Share on other sites More sharing options...
Marcos Daniel Posted July 7, 2019 at 01:12 AM Share Posted July 7, 2019 at 01:12 AM talvez tenhas que adicionar algo na source questmanager Link to comment Share on other sites More sharing options...
GODSPEED Posted July 7, 2019 at 09:41 AM Share Posted July 7, 2019 at 09:41 AM 8 horas atrás, Anderson Fabris disse: Ocultar conteúdo --- Sistema de Kills --- function give_kills(mykills) os.execute("mysql -u root --password='SENHA' player --execute='UPDATE player SET kills = kills + ".. mykills .." WHERE id = ".. pc.get_name() ..";'") end --- Fim do Sistema de Kills --- ----- QUEST quest give_kill begin state start begin when kill with npc.is_pc() begin syschat("Você matou um Jogador! Foi Somado em seu Ranking PVP") give_kills(1) end end end Também não está dando certo, não sei oque se passa :X alguém pode ajudaR? ----SYSSER SetKillerMode Update [ADM]annndii[1] tenta trocar : os.execute("mysql -u root --password='SENHA' player --execute='UPDATE player SET kills = kills + ".. mykills .." WHERE id = ".. pc.get_name() ..";'") por : os.execute("mysql -u root --password='SENHA' player --execute='UPDATE player SET kills = kills + ".. mykills .." WHERE name = ".. pc.get_name() ..";'") 1 Link to comment Share on other sites More sharing options...
Anderson Fabris Posted July 7, 2019 at 03:27 PM Author Share Posted July 7, 2019 at 03:27 PM 5 horas atrás, GODSPEED disse: tenta trocar : os.execute("mysql -u root --password='SENHA' player --execute='UPDATE player SET kills = kills + ".. mykills .." WHERE id = ".. pc.get_name() ..";'") por : os.execute("mysql -u root --password='SENHA' player --execute='UPDATE player SET kills = kills + ".. mykills .." WHERE name = ".. pc.get_name() ..";'") Continuo com o mesmo problema :( não contabiliza Link to comment Share on other sites More sharing options...
LuizFernando Posted July 7, 2019 at 04:46 PM Share Posted July 7, 2019 at 04:46 PM Crie uma coluna kills na tabela player e player_deleted quest contador_kills begin state start begin when kill with npc.is_pc() begin local q1 = mysql_query('UPDATE player.player SET kills = kills+1 WHERE name = \\"'..pc.get_name()..'\\"') end end Link to comment Share on other sites More sharing options...
Anderson Fabris Posted July 7, 2019 at 05:43 PM Author Share Posted July 7, 2019 at 05:43 PM (edited) 56 minutos atrás, LuizFernando disse: Crie uma coluna kills na tabela player e player_deleted quest contador_kills begin state start begin when kill with npc.is_pc() begin local q1 = mysql_query('UPDATE player.player SET kills = kills+1 WHERE name = \\"'..pc.get_name()..'\\"') end end Spoiler quest contador_kills begin state start begin when kill with npc.is_pc() begin local q1 = mysql_query("UPDATE player.player SET kills = kills+1 WHERE name = ".. pc.get_name() .."'") syschat("Você matou um Jogador! Foi Somado em seu Ranking PVP") end end Ficou assim, porém continua sem contabilizar. Edited July 7, 2019 at 05:43 PM by Anderson Fabris Link to comment Share on other sites More sharing options...
GODSPEED Posted July 7, 2019 at 06:26 PM Share Posted July 7, 2019 at 06:26 PM 37 minutos atrás, Anderson Fabris disse: Ocultar conteúdo quest contador_kills begin state start begin when kill with npc.is_pc() begin local q1 = mysql_query("UPDATE player.player SET kills = kills+1 WHERE name = ".. pc.get_name() .."'") syschat("Você matou um Jogador! Foi Somado em seu Ranking PVP") end end Ficou assim, porém continua sem contabilizar. tens a coluna kills na db? se sim tenta :: quest contador_kills begin state start begin when kill with npc.is_pc() begin local mais_um = mysql_query("SELECT kills FROM player.player WHERE name ="..pc.get_name()) mais_um = mais_um+1 local q1 = mysql_query("UPDATE player.player SET kills = "..mais_um.." WHERE name = ".. pc.get_name()) syschat("Você matou um Jogador! Foi Somado em seu Ranking PVP") end end end Link to comment Share on other sites More sharing options...
Anderson Fabris Posted July 7, 2019 at 09:11 PM Author Share Posted July 7, 2019 at 09:11 PM (edited) 3 horas atrás, GODSPEED disse: tens a coluna kills na db? se sim tenta :: quest contador_kills begin state start begin when kill with npc.is_pc() begin local mais_um = mysql_query("SELECT kills FROM player.player WHERE name ="..pc.get_name()) mais_um = mais_um+1 local q1 = mysql_query("UPDATE player.player SET kills = "..mais_um.." WHERE name = ".. pc.get_name()) syschat("Você matou um Jogador! Foi Somado em seu Ranking PVP") end end end A Coluna KILLS está na " Player/player.kill" Também não deu certo. Não Contabiliza também não da o aviso que matou. Da maneira que você postou ela da erro, eu corrigi ela: Spoiler quest contador_kills begin state start begin when kill with npc.is_pc() begin local mais_um = mysql_query("SELECT kills FROM player.player WHERE name = "..pc.get_name()..") mais_um = mais_um+1 local q1 = mysql_query("UPDATE player.player SET kills = "..mais_um.." WHERE name = "..pc.get_name()..") syschat("Você matou um Jogador! Foi Somado em seu Ranking PVP") end end end kills int 11 0 -1 0 0 0 0 0 0 0 0 kill int 11 0 -1 0 0 0 0 0 0 0 Edited July 7, 2019 at 09:28 PM by Anderson Fabris Link to comment Share on other sites More sharing options...
WLN Posted July 7, 2019 at 09:37 PM Share Posted July 7, 2019 at 09:37 PM quest kill_yourself begin state start begin when kill with npc.is_pc() begin local kill = 1 mysql_query("UPDATE player.player SET kills = kills + "..kill.." WHERE nome = '"..pc.get_name().."' LIMIT 1;") end end end tenta assim, porém não recomendo o uso Link to comment Share on other sites More sharing options...
GODSPEED Posted July 7, 2019 at 09:39 PM Share Posted July 7, 2019 at 09:39 PM quest contador_kills begin state start begin when kill with npc.is_pc() begin local mais_um = mysql_query("SELECT kills FROM player.player WHERE name = "..pc.get_name()..") mais_um = tonumber(mais_um) mais_um = mais_um+1 local q1 = mysql_query("UPDATE player.player SET kills = "..mais_um.." WHERE name = "..pc.get_name()..") syschat("Você matou um Jogador! Foi Somado em seu Ranking PVP") end end end E se tiver assim? Link to comment Share on other sites More sharing options...
Anderson Fabris Posted July 7, 2019 at 10:09 PM Author Share Posted July 7, 2019 at 10:09 PM 29 minutos atrás, Arslan disse: quest kill_yourself begin state start begin when kill with npc.is_pc() begin local kill = 1 mysql_query("UPDATE player.player SET kills = kills + "..kill.." WHERE nome = '"..pc.get_name().."' LIMIT 1;") end end end tenta assim, porém não recomendo o uso Eu corrigi ali que tava "NOME" pra "NAME", mesmo assim não está funcionando. Não contabiliza. "/ 29 minutos atrás, GODSPEED disse: quest contador_kills begin state start begin when kill with npc.is_pc() begin local mais_um = mysql_query("SELECT kills FROM player.player WHERE name = "..pc.get_name()..") mais_um = tonumber(mais_um) mais_um = mais_um+1 local q1 = mysql_query("UPDATE player.player SET kills = "..mais_um.." WHERE name = "..pc.get_name()..") syschat("Você matou um Jogador! Foi Somado em seu Ranking PVP") end end end E se tiver assim? Também não deu certo meu rei :( to ficando louco já. Link to comment Share on other sites More sharing options...
LuizFernando Posted July 7, 2019 at 11:45 PM Share Posted July 7, 2019 at 11:45 PM Como não funciona? Manda seu discord irei te ajudar de imediato! Link to comment Share on other sites More sharing options...
Anderson Fabris Posted July 7, 2019 at 11:49 PM Author Share Posted July 7, 2019 at 11:49 PM (edited) 2 horas atrás, LuizFernando disse: Como não funciona? Manda seu discord irei te ajudar de imediato! https://discord.gg/2msyuJ annndii#5670 facebook.com/anderson.fabris 014(35) 998854027 ( WHATSAPP ) Entra ai que estou online. Edited July 8, 2019 at 02:04 AM by Anderson Fabris Link to comment Share on other sites More sharing options...
GODSPEED Posted July 8, 2019 at 12:01 PM Share Posted July 8, 2019 at 12:01 PM só uma dúvida, quando crias um novo char qual é valor que a coluna kills, fica? Link to comment Share on other sites More sharing options...
Anderson Fabris Posted July 8, 2019 at 03:35 PM Author Share Posted July 8, 2019 at 03:35 PM (edited) 4 horas atrás, GODSPEED disse: só uma dúvida, quando crias um novo char qual é valor que a coluna kills, fica? 0 ( zero ) Deixa eu pedir, não poderia ser algo na SOURCE? porque eu estava aqui testando também o sistema de " VOUCHER ", que tem uma função parecido, só que direcionada para a account, e ele também não está funcionando, seria algo relacionado a source será? ou no mysql? muito estranho. Edited July 8, 2019 at 04:32 PM by Anderson Fabris Link to comment Share on other sites More sharing options...
[Admin] tierrilopes Posted July 8, 2019 at 08:07 PM Share Posted July 8, 2019 at 08:07 PM Ainda não tive tempo de testar o que disse acima. Instala a função de quest mysql_query pela source (tens aqui no forum algures tambem), para executar queries por quest sem nada relativo a "os.execute" Link to comment Share on other sites More sharing options...
Anderson Fabris Posted July 8, 2019 at 08:09 PM Author Share Posted July 8, 2019 at 08:09 PM 1 minuto atrás, tierrilopes disse: Ainda não tive tempo de testar o que disse acima. Instala a função de quest mysql_query pela source (tens aqui no forum algures tambem), para executar queries por quest sem nada relativo a "os.execute" Poderia me mostrar direção? link de onde tem explicando? Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now