Jump to content

[ Contagem de Kill ] - MYSQL


Anderson Fabris
 Share

Recommended Posts

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

 

 

  • Like 1
Link to comment
Share on other sites

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

 

  • Thanks 1
Link to comment
Share on other sites

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 by Anderson Fabris
Link to comment
Share on other sites

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

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;
    }

 

  • Sad 1
Link to comment
Share on other sites

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

  • Thanks 1
Link to comment
Share on other sites

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 by Anderson Fabris
Link to comment
Share on other sites

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() ..";'")
  • Confused 1
Link to comment
Share on other sites

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

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

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 by Anderson Fabris
Link to comment
Share on other sites

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

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 by Anderson Fabris
Link to comment
Share on other sites

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

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

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 by Anderson Fabris
Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...