Siga-nos em...
Follow us on Twitter Follow us on Facebook Watch us on YouTube
Registro

Alpha Servers
Página 1 de 2 12 ÚltimoÚltimo
Resultados 1 a 10 de 12

Tópico: Source /limparpk

  1. #1

    Avatar de -_Dark_-
    Data de Ingresso
    Jun 2011
    Localização
    São Paulo
    Idade
    30
    Posts
    40
    Agradecido
    16
    Agradeceu
    8
    Peso da Avaliação
    0

    Padrão Source /limparpk

    Código:
    void CHAT_COMMANDS::LimparPK(DWORD aIndex)
    {
    	OBJECTSTRUCT *lpObj = (OBJECTSTRUCT*)OBJECT_POINTER(aIndex);
    	OBJECTSTRUCT * gObj = (OBJECTSTRUCT*)OBJECT_POINTER(aIndex);
    
    	int tipovip = MYSQL->GetFieldInt("MuOnline.dbo.MEMB_INFO","Vip","WHERE memb___id='%s'",gObj->AccountID);
    
    	int LevelPK = GetPrivateProfileInt("PkCommand","Level",0,CFG_COMMAND);
    	int LevelPK1 = GetPrivateProfileInt("PkCommand","LevelVS",0,CFG_COMMAND);
    	int LevelPK2 = GetPrivateProfileInt("PkCommand","LevelVP",0,CFG_COMMAND);
    	unsigned int ZenPK = GetPrivateProfileInt("PkCommand","Price",30000000,CFG_COMMAND);
    	unsigned int ZenPK1 = GetPrivateProfileInt("PkCommand","PriceVS",20000000,CFG_COMMAND);
    	unsigned int ZenPK2 = GetPrivateProfileInt("PkCommand","PriceVP",10000000,CFG_COMMAND);
    	
    	if(stricmp(&this->PkAtivo[0], "NAO") == 0)
    	{
    		sprintf_s(msN,"[%s] Comando Desabilitado. Consulte Um Admin.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    		return;
    	}
    	switch(tipovip)
    	{
    	case 0:
    	{
    	if(this->LevelPK > lpObj->Level)
    	{
    		sprintf_s(msN,"[%s] Você Não Tem Level Suficiente Para Ser Perdoado.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    		return;
    	}
    	else if(this->ZenPK > lpObj->Money)
    	{
    		sprintf_s(msN,"[%s] Você Não Tem Zen Suficiente Para Ser Perdoado.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    		return;
    	}
    	else if(lpObj->PkLevel < 5)
    	{
    		
    		sprintf_s(msN,"[%s] Você Não Está PK.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    		return;
    	}
    
    	else
    	{
    		sprintf_s(msN,"[%s] Parabéns Todos Os Seus Pecados Estão Perdoados.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    
            lpObj->PkLevel = 3;
    		lpObj->Money -= this->ZenPK;
    		GCPkLevelSend(aIndex,lpObj->PkLevel);
    		GCMoneySend(aIndex,lpObj->Money);
    		}
    		}break;
    	case 1:
    	{
    	if(this->LevelPK1 > lpObj->Level)
    	{
    		sprintf_s(msN,"[%s] Você Não Tem Level Suficiente Para Ser Perdoado.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    		return;
    	}
    	else if(this->ZenPK1 > lpObj->Money)
    	{
    		sprintf_s(msN,"[%s] Você Não Tem Zen Suficiente Para Ser Perdoado.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    		return;
    	}
    	else if(lpObj->PkLevel < 5)
    	{
    		
    		sprintf_s(msN,"[%s] Você Não Está PK.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    		return;
    	}
    
    	else
    	{
    		sprintf_s(msN,"[%s] Parabéns Todos Os Seus Pecados Estão Perdoados.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    
            lpObj->PkLevel = 3;
    		lpObj->Money -= this->ZenPK1;
    		GCPkLevelSend(aIndex,lpObj->PkLevel);
    		GCMoneySend(aIndex,lpObj->Money);
    		}
    		}break;
        case 2:
    	{
    	if(this->LevelPK2 > lpObj->Level)
    	{
    		sprintf_s(msN,"[%s] Você Não Tem Level Suficiente Para Ser Perdoado.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    		return;
    	}
    	else if(this->ZenPK2 > lpObj->Money)
    	{
    		sprintf_s(msN,"[%s] Você Não Tem Zen Suficiente Para Ser Perdoado.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    		return;
    	}
    	else if(lpObj->PkLevel < 5)
    	{
    		
    		sprintf_s(msN,"[%s] Você Não Está PK.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    		return;
    	}
    
    	else
    	{
    		sprintf_s(msN,"[%s] Parabéns Todos Os Seus Pecados Estão Perdoados.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    
            lpObj->PkLevel = 3;
    		lpObj->Money -= this->ZenPK2;
    		GCPkLevelSend(aIndex,lpObj->PkLevel);
    		GCMoneySend(aIndex,lpObj->Money);
    		            }
            }break;
        }
    }
    Créditos: -_Dark_-

  2. #2

    Avatar de xiscoss
    Data de Ingresso
    Aug 2010
    Localização
    Santa Catarina
    Posts
    343
    Agradecido
    144
    Agradeceu
    106
    Peso da Avaliação
    17

    Padrão

    Uma dica, PkLevel <= 3 não é PK...

    Obs.: Atualizado, estava incorreto.
    Última edição por xiscoss; 06-03-2014 às 12:48 AM.
    Aerocool DS 200 Lite/ Corsair GS600/ ASRock Fatal1ty Z97 Killer/ Intel Core i5 4670K 3,40 GHz 6MB Cache/ Corsair Water Cooler H80i/ Sapphire R9270X Dual-X 2GB OC/ Hyper X Fury 2x8GB 1866Mhz DDR3/ SSD Kingston 120GB/ HDD Samsung 500GB

  3. #3

    Avatar de -_Dark_-
    Data de Ingresso
    Jun 2011
    Localização
    São Paulo
    Idade
    30
    Posts
    40
    Agradecido
    16
    Agradeceu
    8
    Peso da Avaliação
    0

    Padrão

    Citação Postado originalmente por xiscoss Ver Post
    Uma dica, PkLevel >= 3 não é PK...
    Hum...

    aqui está limpando pk normalmente

  4. #4



    Avatar de Ayrton Ricardo
    Data de Ingresso
    May 2012
    Localização
    Joao Pessoa - PB
    Idade
    28
    Posts
    1.379
    Agradecido
    262
    Agradeceu
    171
    Peso da Avaliação
    26

    Padrão

    Dúvida:
    "Essa source, é em qual versão?
    Pois a 97d só vai até PKLevel 3 não? To viajando? Qual o certo ^^? .-."
    Última edição por Ayrton Ricardo; 05-03-2014 às 09:35 PM.
    Leiam, todo desenvolvedor PHP precisa conhecer: Hidden Content .




  5. #5

    Avatar de Sunligth
    Data de Ingresso
    Jun 2012
    Localização
    Sao Paulo
    Posts
    154
    Agradecido
    109
    Agradeceu
    73
    Peso da Avaliação
    13

    Padrão

    player com level abaixo de 4 eu não considero como player Killers

  6. #6



    Avatar de Ayrton Ricardo
    Data de Ingresso
    May 2012
    Localização
    Joao Pessoa - PB
    Idade
    28
    Posts
    1.379
    Agradecido
    262
    Agradeceu
    171
    Peso da Avaliação
    26

    Padrão

    Citação Postado originalmente por Sunligth Ver Post
    player com level abaixo de 4 eu não considero como player Killers
    Vou precisar de um pouco mais informação que isto ^^'

    O que vem a ser PKLevel?
    Leiam, todo desenvolvedor PHP precisa conhecer: Hidden Content .




  7. #7

    Avatar de -_Dark_-
    Data de Ingresso
    Jun 2011
    Localização
    São Paulo
    Idade
    30
    Posts
    40
    Agradecido
    16
    Agradeceu
    8
    Peso da Avaliação
    0

    Padrão

    Citação Postado originalmente por Ayrton Ricardo Ver Post
    Dúvida:
    "Essa source, é em qual versão?
    Pois a 97d só vai até PKLevel 3 não? To viajando? Qual o certo ^^? .-."
    Eu uso na minha 97d+ mais funciona em qualquer versão so basta adaptar

  8. #8

    Avatar de Kinho Mace
    Data de Ingresso
    Sep 2009
    Localização
    aa
    Posts
    181
    Agradecido
    93
    Agradeceu
    29
    Peso da Avaliação
    16

    Padrão

    uma dica.

    - armazenar o vip quando o player conectar em uma struct.
    - lpObj -gObj não é a mesma coisa?
    - poderia também minimizar o codigo, muitos cases de vip, poderia usar um simples vector.

    claro que cada um faz de jeito, mais minimizar é a primeira coisa

  9. O Seguinte Usuário Agradeceu Kinho Mace Por este Post Útil:


  10. #9

    Avatar de -_Dark_-
    Data de Ingresso
    Jun 2011
    Localização
    São Paulo
    Idade
    30
    Posts
    40
    Agradecido
    16
    Agradeceu
    8
    Peso da Avaliação
    0

    Padrão

    Citação Postado originalmente por Kinho Mace Ver Post
    uma dica.

    - armazenar o vip quando o player conectar em uma struct.
    - lpObj -gObj não é a mesma coisa?
    - poderia também minimizar o codigo, muitos cases de vip, poderia usar um simples vector.

    claro que cada um faz de jeito, mais minimizar é a primeira coisa
    Valeu kinho eu sou meio desligado shaushua

    Código:
    void CHAT_COMMANDS::LimparPK(DWORD aIndex)
    {
    	OBJECTSTRUCT * gObj = (OBJECTSTRUCT*)OBJECT_POINTER(aIndex);
    
    	int tipovip = MYSQL->GetFieldInt("MuOnline.dbo.MEMB_INFO","Vip","WHERE memb___id='%s'",gObj->AccountID);
    
    	int LevelPK = GetPrivateProfileInt("PkCommand","Level",0,CFG_COMMAND);
    	int LevelPK1 = GetPrivateProfileInt("PkCommand","LevelVS",0,CFG_COMMAND);
    	int LevelPK2 = GetPrivateProfileInt("PkCommand","LevelVP",0,CFG_COMMAND);
    	unsigned int ZenPK = GetPrivateProfileInt("PkCommand","Price",30000000,CFG_COMMAND);
    	unsigned int ZenPK1 = GetPrivateProfileInt("PkCommand","PriceVS",20000000,CFG_COMMAND);
    	unsigned int ZenPK2 = GetPrivateProfileInt("PkCommand","PriceVP",10000000,CFG_COMMAND);
    	
    	if(stricmp(&this->PkAtivo[0], "NAO") == 0)
    	{
    		sprintf_s(msN,"[%s] Comando Desabilitado. Consulte Um Admin.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    		return;
    	}
    	switch(tipovip)
    	{
    	case 0:
    	{
    	if(this->LevelPK > gObj->Level)
    	{
    		sprintf_s(msN,"[%s] Você Não Tem Level Suficiente Para Ser Perdoado.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    		return;
    	}
    	else if(this->ZenPK > gObj->Money)
    	{
    		sprintf_s(msN,"[%s] Você Não Tem Zen Suficiente Para Ser Perdoado.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    		return;
    	}
    	else if(gObj->PkLevel < 5)
    	{
    		
    		sprintf_s(msN,"[%s] Você Não Está PK.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    		return;
    	}
    
    	else
    	{
    		sprintf_s(msN,"[%s] Parabéns Todos Os Seus Pecados Estão Perdoados.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    
            gObj->PkLevel = 3;
    		gObj->Money -= this->ZenPK;
    		GCPkLevelSend(aIndex,gObj->PkLevel);
    		GCMoneySend(aIndex,gObj->Money);
    		}
    		}break;
    	case 1:
    	{
    	if(this->LevelPK1 > gObj->Level)
    	{
    		sprintf_s(msN,"[%s] Você Não Tem Level Suficiente Para Ser Perdoado.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    		return;
    	}
    	else if(this->ZenPK1 > gObj->Money)
    	{
    		sprintf_s(msN,"[%s] Você Não Tem Zen Suficiente Para Ser Perdoado.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    		return;
    	}
    	else if(gObj->PkLevel < 5)
    	{
    		
    		sprintf_s(msN,"[%s] Você Não Está PK.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    		return;
    	}
    
    	else
    	{
    		sprintf_s(msN,"[%s] Parabéns Todos Os Seus Pecados Estão Perdoados.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    
            gObj->PkLevel = 3;
    		gObj->Money -= this->ZenPK1;
    		GCPkLevelSend(aIndex,gObj->PkLevel);
    		GCMoneySend(aIndex,gObj->Money);
    		}
    		}break;
        case 2:
    	{
    	if(this->LevelPK2 > gObj->Level)
    	{
    		sprintf_s(msN,"[%s] Você Não Tem Level Suficiente Para Ser Perdoado.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    		return;
    	}
    	else if(this->ZenPK2 > gObj->Money)
    	{
    		sprintf_s(msN,"[%s] Você Não Tem Zen Suficiente Para Ser Perdoado.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    		return;
    	}
    	else if(gObj->PkLevel < 5)
    	{
    		
    		sprintf_s(msN,"[%s] Você Não Está PK.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    		return;
    	}
    
    	else
    	{
    		sprintf_s(msN,"[%s] Parabéns Todos Os Seus Pecados Estão Perdoados.",gObj->Name);
    		ServerMsgSend(msN,aIndex,1);
    
            gObj->PkLevel = 3;
    		gObj->Money -= this->ZenPK2;
    		GCPkLevelSend(aIndex,gObj->PkLevel);
    		GCMoneySend(aIndex,gObj->Money);
    		            }
            }break;
        }
    }

  11. #10

    Avatar de xiscoss
    Data de Ingresso
    Aug 2010
    Localização
    Santa Catarina
    Posts
    343
    Agradecido
    144
    Agradeceu
    106
    Peso da Avaliação
    17

    Padrão

    @Ayrton
    PKLevel é o status do char: PK, Normal ou Hero.

    @All
    PkLevel >= 0 && <= 2 (Hero Player)
    PkLevel == 3 (Normal)
    PkLevel >= 4 && <= 6 (Player Killer)

    Obs.: Atenção, eu confundi a descrição anteriormente, já atualizei o post.
    Última edição por xiscoss; 06-03-2014 às 12:47 AM.
    Aerocool DS 200 Lite/ Corsair GS600/ ASRock Fatal1ty Z97 Killer/ Intel Core i5 4670K 3,40 GHz 6MB Cache/ Corsair Water Cooler H80i/ Sapphire R9270X Dual-X 2GB OC/ Hyper X Fury 2x8GB 1866Mhz DDR3/ SSD Kingston 120GB/ HDD Samsung 500GB

  12. Os Seguintes 2 Usuários Agradeceram você xiscoss Por este Post Útil:


 

 
Página 1 de 2 12 ÚltimoÚltimo

Informações de Tópico

Usuários Navegando neste Tópico

Há 1 usuários navegando neste tópico. (0 registrados e 1 visitantes)

Tópicos Similares

  1. |Pedido| Source 96.40
    Por lukas05 no fórum Pedidos
    Respostas: 1
    Último Post: 09-08-2013, 10:10 PM
  2. |Release| Source 97d
    Por Getulio no fórum Sources
    Respostas: 5
    Último Post: 21-08-2012, 06:50 PM
  3. |Resolvido| Source SQL.cpp e SQL.h
    Por xxrenanxx no fórum Pedidos
    Respostas: 1
    Último Post: 14-08-2010, 10:49 AM

Marcadores

Permissões de Postagem

  • Você não pode iniciar novos tópicos
  • Você não pode enviar respostas
  • Você não pode enviar anexos
  • Você não pode editar suas mensagens
  •