Ir para conteúdo
  • Cadastre-se

Posts Recomendados

  • Respostas 59
  • Created
  • Última resposta

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Obrigatoriamente leia tudo! Atualizado 01/07/2014   Opa galera mais uma vez eu trazendo o melhor para todos. Hoje vou postar o sistema de Guild de Points que eu utilizo em meu OTserver, acredito q

Onde ta new OTS_Player troque por new Player ...   Onde ta:  $check_name_in_database = $ots->createObject('Player'); $check_name_in_database->find($buy_from);   Por: $buy_player = new Playe

Ta certo o erro é no layout.php veja que tem: ?subtopic=shopadmin em cima e  em baixo   corrija!

Posted Images

  • 4 weeks later...

o shopguidadmin certo? porque o' shopadmin' já tem no gesior. Eu instalei ele já da primeira vez que fiz o tutorial, e ainda ficou assim, quando cliko no Painel do 'Shoguildadmin' vai para o 'shopadmin'.

 

Vou tentar esse segundo método que você falou  de exportar a database do shop para o shopguild.

 

 

 

Edit @

 

Mesmo que eu faça o segundo método , se um dia eu quiser editar o shopguild não vai dar :\

 

Eu anexei ai pra voce ver a database, tem algo errado nela será?

post-111819-0-89944300-1403740723_thumb.

Editado por maresoft (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

o shopguidadmin certo? porque o' shopadmin' já tem no gesior. Eu instalei ele já da primeira vez que fiz o tutorial, e ainda ficou assim, quando cliko no Painel do 'Shoguildadmin' vai para o 'shopadmin'.

 

Vou tentar esse segundo método que você falou  de exportar a database do shop para o shopguild.

 

 

 

Edit @

 

Mesmo que eu faça o segundo método , se um dia eu quiser editar o shopguild não vai dar :\

 

Se está ocorrendo esse erro, então é porque o direcionamento no layout.php está errado, verifique!

if($group_id_of_acc_logged >= $config['site']['access_admin_panel']) echo "
<a href='?subtopic=shopadmin'>
  <div id='submenu_shopadmin' class='Submenuitem' onMouseOver='MouseOverSubmenuItem(this)' onMouseOut='MouseOutSubmenuItem(this)'>
    <div class='LeftChain' style='background-image:url(".$layout_name."/images/general/chain.gif);'></div>
    <div id='ActiveSubmenuItemIcon_shopadmin' class='ActiveSubmenuItemIcon' style='background-image:url(".$layout_name."/images/menu/icon-activesubmenu.gif);'></div>
    <div class='SubmenuitemLabel'><font color=red>Shop Admin</font></div>
    <div class='RightChain' style='background-image:url(".$layout_name."/images/general/chain.gif);'></div>
  </div>
</a>
<a href='?subtopic=shopguildadmin'>
  <div id='submenu_shopguildadmin' class='Submenuitem' onMouseOver='MouseOverSubmenuItem(this)' onMouseOut='MouseOutSubmenuItem(this)'>
    <div class='LeftChain' style='background-image:url(".$layout_name."/images/general/chain.gif);'></div>
    <div id='ActiveSubmenuItemIcon_shopguildadmin' class='ActiveSubmenuItemIcon' style='background-image:url(".$layout_name."/images/menu/icon-activesubmenu.gif);'></div>
    <div class='SubmenuitemLabel'><font color=red>ShopGuild Admin</font></div>
    <div class='RightChain' style='background-image:url(".$layout_name."/images/general/chain.gif);'></div>
  </div>
</a>";

E em index.php!

case "shopadmin";
     $subtopic = "shopadmin";
     $topic = "Shop Admin";
     include("shopadmin.php");
break;
case "shopguildadmin";
     $subtopic = "shopguildadmin";
     $topic = "ShopGuild Admin";
     include("shopguildadmin.php");
break;
Editado por Natanael Beckman (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Os meus estão assim, deve estar conforme os que você colocou.

 

 

Eu acho que tem alguns erros de ordens, mas eu preciso deixar do mesmo jeito acima?

post-111819-0-44767400-1403741782_thumb.

post-111819-0-29092000-1403741841_thumb.

Editado por maresoft (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Seria interessante alguém começar a trabalhar em cima da TFS 1.0.0, afinal as coisas se atualizam né !

 

Vou testar aqui e se der erros eu posto aqui !

Link para o post
Compartilhar em outros sites

Brother estou usando seu sistema é top de linha ta de parabens por compartilahar com a comunidade . Mas me resta uma duvida aqueles que receberam guild points recebe a cada 24 horas ou quem ja pegou não pega + mesmo entrando em outra guild ?

Link para o post
Compartilhar em outros sites

Brother estou usando seu sistema é top de linha ta de parabens por compartilahar com a comunidade . Mas me resta uma duvida aqueles que receberam guild points recebe a cada 24 horas ou quem ja pegou não pega + mesmo entrando em outra guild ?

 

O guild points só recebe uma vez... A coluna guild_points_stats localizada na tabela accounts é a responsável para identificar o account que já recebeu os points, abaixo vou mostra uma imagem da minha database onde algumas accounts já receberam os pontos e outras não, observe que... as que já receberam a coluna guild_points_stats contém uma numeração e só fica apto a receber aqueles que não contém numeração na coluna guild_points_stats é um sistema perfeito pode ficar tranquilo. A questão das 24 horas é caso alguém da guild que não recebeu poderá receber quando o leader executar o comando, e botei de 24 em 24 hrs pra não gerar processamentos desnecessários pro servidor.

 

uaaf.png

 

REP+ :D

Link para o post
Compartilhar em outros sites

Opa,

 

Então testei aqui sim !

 

Olha o erro que deu:

 

Lua Script Error: [TalkAction Interface]
data/talkactions/scripts/guildpoints.lua:onSay
data/talkactions/scripts/guildpoints.lua:72: attempt to call field 'getResult' (a nil value)
stack traceback:
        [C]: in function 'getResult'
        data/talkactions/scripts/guildpoints.lua:72: in function <data/talkactions/scripts/guildpoints.lua:69>
Link para o post
Compartilhar em outros sites

Rep + pra tu mano tu merece e obrigado por me explicar com cada detalhe esse systema :D

---------------------

Muito obrigado mano :D

 

 

 

Opa,

 

Então testei aqui sim !

 

Olha o erro que deu:

 

Lua Script Error: [TalkAction Interface]
data/talkactions/scripts/guildpoints.lua:onSay
data/talkactions/scripts/guildpoints.lua:72: attempt to call field 'getResult' (a nil value)
stack traceback:
        [C]: in function 'getResult'
        data/talkactions/scripts/guildpoints.lua:72: in function <data/talkactions/scripts/guildpoints.lua:69>

 

 

Vai em talkactions/scripts/guildpoints.lua apaga o que tem dentro e troca por isso pra ver:

GuildPointsConfigs =
{
        ExecuteIntervalHours = 24,
        NeedPlayersOnline = 7,
        NeedDiferentIps = 5,
        MinLevel = 70,
        AddPointsForAcc = 19
}


function getGuildPlayersValidAccIDS(GuildID, MinLevel)
        local RanksIDS = {}
        local AccsID = {}
        local ValidAccsID = {}
        Query1 = db.storeQuery("SELECT `id` FROM `guild_ranks` WHERE guild_id = '".. GuildID .."'")
        if(Query1:getID() == -1) then
                return ValidAccsID
        end
        for i = 1, Query1:getRows() do
                table.insert(RanksIDS, Query1:getDataInt("id"))
                Query1:next()
        end
        Query2 = db.storeQuery("SELECT `account_id` FROM `players` WHERE `rank_id` IN (".. table.concat(RanksIDS, ', ') ..") AND `level` >= ".. MinLevel .."")
        if(Query2:getID() == -1) then
                return ValidAccsID
        end
        for i = 1, Query2:getRows() do
                local AccID = Query2:getDataInt("account_id")
                if #AccsID > 0 then
                        for k = 1, #AccsID do
                                if AccID == AccsID[k] then
                                        AddAccList = false
                                        break
                                end
                                AddAccList = true
                        end
                        if AddAccList then
                                table.insert(AccsID, AccID)
                        end
                else
                        table.insert(AccsID, AccID)
                end
                Query2:next()
        end
        Query3 = db.storeQuery("SELECT `id` FROM `accounts` WHERE `guild_points_stats` = 0 AND `id` IN (".. table.concat(AccsID, ', ')..")")
        if(Query3:getID() == -1) then
                return ValidAccsID
        end
        for i = 1, Query3:getRows() do
                local AccID = Query3:getDataInt("id")
                if #ValidAccsID > 0 then
                        for k = 1, #ValidAccsID do
                                if AccID == ValidAccsID[k] then
                                        AddAccList = false
                                        break
                                end
                                AddAccList = true
                        end
                        if AddAccList then
                                table.insert(ValidAccsID, AccID)
                        end
                else
                        table.insert(ValidAccsID, AccID)
                end
                Query3:next()
        end
        return ValidAccsID
end


function onSay(cid, words, param, channel)
        if(getPlayerGuildLevel(cid) == 3) then
                local GuildID = getPlayerGuildId(cid)
                Query = db.storeQuery("SELECT `last_execute_points` FROM `guilds` WHERE id = '".. GuildID .."'")
                if(Query:getID() == -1) then
                        return true
                end
                if Query:getDataInt("last_execute_points") < os.time() then
                        local GuildMembers = {}
                        local GuildMembersOnline = {}
                        local PlayersOnline = getPlayersOnline()
                        for i, pid in ipairs(PlayersOnline) do
                                if getPlayerGuildId(pid) == GuildID then
                                        if getPlayerLevel(pid) >= GuildPointsConfigs.MinLevel then
                                                table.insert(GuildMembersOnline, pid)
                                        end
                                end
                        end
                        if #GuildMembersOnline >= GuildPointsConfigs.NeedPlayersOnline then
                                local IPS = {}
                                for i, pid in ipairs(GuildMembersOnline) do
                                        local PlayerIP = getPlayerIp(pid)
                                        if #IPS > 0 then
                                                for k = 1, #IPS do
                                                        if PlayerIP == IPS[k] then
                                                                AddIPList = false
                                                                break
                                                        end
                                                        AddIPList = true
                                                end
                                                if AddIPList then
                                                        table.insert(IPS, PlayerIP)
                                                end
                                        else
                                                table.insert(IPS, PlayerIP)
                                        end
                                end
                                if #IPS >= GuildPointsConfigs.NeedDiferentIps then
                                        local ValidAccounts = getGuildPlayersValidAccIDS(GuildID, GuildPointsConfigs.MinLevel)
                                        db.executeQuery("UPDATE `guilds` SET `last_execute_points` = ".. os.time() +(GuildPointsConfigs.ExecuteIntervalHours * 3600) .." WHERE `guilds`.`id` = ".. GuildID ..";")
                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "".. #ValidAccounts .." Players received points")
                                        if #ValidAccounts > 0 then
                                                db.executeQuery("UPDATE `accounts` SET `guild_points` = `guild_points` + " ..GuildPointsConfigs.AddPointsForAcc .. ", `guild_points_stats` = ".. os.time() .." WHERE `id` IN (" .. table.concat(ValidAccounts, ',').. ");")
                                                for i, pid in ipairs(GuildMembersOnline) do
                                                        local PlayerMSGAccID = getPlayerAccountId(pid)
                                                        for k = 1, #ValidAccounts do
                                                                if PlayerMSGAccID == ValidAccounts[k] then
                                                                        doPlayerSendTextMessage(pid, MESSAGE_INFO_DESCR, "You received ".. GuildPointsConfigs.AddPointsForAcc .." guild points.")
                                                                        break
                                                                end
                                                        end
                                                end
                                        end
                                else
                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Only ".. #IPS .." players are valid, you need ".. GuildPointsConfigs.NeedDiferentIps .." players with different ips.")
                                end
                        else
                                doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Has only ".. #GuildMembersOnline .." players online you need ".. GuildPointsConfigs.NeedPlayersOnline .." players online at least from level "..GuildPointsConfigs.MinLevel ..".")
                        end
                else
                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "The command can only be run once every "..GuildPointsConfigs.ExecuteIntervalHours .." hours.")
                end
        else
                doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Only guild leader can request points.")
        end
        return true
end
Link para o post
Compartilhar em outros sites

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.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Conteúdo Similar

    • Por Born Retarded
      É possível fazer um sistema(script) que ao criar uma guild , o jogador fique com um prefixo antes do nome ? 


      Exemplo: Aqueles sistemas de VIP onde o jogador fica com o nome [VIP] Nome.


      Se possível determinar na script/comando de criar guild, um número de caracteres máximo pra ficar como Tag da guild.



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo