Pontos de Amor - [:kisses e :givepoints] para BcStorm R63B

+5
LuscasLeo
Cl0ud
NeroHP
DgY™
Je4n
9 participantes

Je4n Je4n  • 03.08.13 2:26

Pontos de Amor - [:kisses e :givepoints] para BcStorm R63B Empty Pontos de Amor - [:kisses e :givepoints] para BcStorm R63B 03.08.13 2:26

Reputação da mensagem: 100% (1 votos)
Olá pessoal,

O BeatScript (Programador Francês) programou um sistema de pontos de Amor para BcStorm R63B. Funciona da seguinte maneira, Quando você beija um usuário, você ganha um ponto de amor e adiciona um ponto de reputação para o jogador selecionado. Os comandos são: :kisses [usuário] :givepoints  (comando admin).

[PrinScreen:

[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
Quando eu tirei a imagem, foi em francês, mas não se preocupe, ele está em Inglês;) - BeatScript

Bom, traduzi para a nossa Língua padrão, no caso o Português. 


1. Adicione os dois campos `points_user` (int, 11) e `points_reput` (int, 11), em usuários da tabela  do seu banco de dados.
Código:
ALTER TABLE users ADD points_user INT(11) NOT NULL DEFAULT 0;
ALTER TABLE users ADD points_reput INT(11) NOT NULL DEFAULT 0;

2. Adicione este código em Butterfly/HabboHotel/Misc/ChatCommandHandler.cs:


Código:
internal void kisses()
        {
            Room room = Session.GetHabbo().CurrentRoom;
            if (room == null)
                return;
            RoomUser roomuser = room.GetRoomUserManager().GetRoomUserByHabbo(Session.GetHabbo().Id);
            if (roomuser == null)
                return;

            GameClient clientByUsername = null;
            clientByUsername = ButterflyEnvironment.GetGame().GetClientManager().GetClientByUsername(this.Params[1]);

            if (clientByUsername == null)
            {
                this.Session.SendNotif("Usuário não existe.");
            }
            else
            {
                if (clientByUsername.GetHabbo().Username == this.Session.GetHabbo().Username)
                {
                    this.Session.SendNotif("Você não pode beijar a si próprio.");
                }
                else
                {
                    using (IQueryAdapter dbClient = ButterflyEnvironment.GetDatabaseManager().getQueryreactor())
                    {
                        DataRow row;
                        var id = this.Session.GetHabbo().Id;
                        var username = this.Session.GetHabbo().Username;
                        dbClient.runFastQuery("SELECT points_user,points_reput FROM users WHERE id='" + id + "'");
                        row = dbClient.getRow();

                        if (Convert.ToDecimal(row["points_user"]) < 1)
                        {
                            this.Session.SendNotif("Desculpe, mas você não tem mais pontos de amor para dar.");
                        }
                        else
                        {
                            using (IQueryAdapter dbClient2 = ButterflyEnvironment.GetDatabaseManager().getQueryreactor())
                            {
                                DataRow row2;
                                var id_receiver = clientByUsername.GetHabbo().Id;
                                var username_receiver = clientByUsername.GetHabbo().Username;

                                dbClient2.runFastQuery("UPDATE users SET points_reput=points_reput+1 WHERE username='" + username_receiver + "'");
                                dbClient2.runFastQuery("UPDATE users SET points_user=points_user-1 WHERE username='" + username + "'");

                                roomuser.Chat(roomuser.GetClient(), "*LOVE POINTS* " + username + " já beijou " + username_receiver + ". +1 reputation point !", true, 16);

                                dbClient2.runFastQuery("SELECT points_user,points_reput FROM users WHERE id='" + id_receiver + "'");
                                row2 = dbClient2.getRow();

                                var nb_pts_reput = Convert.ToDecimal(row2["points_reput"]);

                                roomuser.Chat(roomuser.GetClient(), username_receiver + " recebeu um ponto de reputação. Agora tem " + nb_pts_reput + " pontos.", true, 1);
                            }
                        }
                    }
                }
            }
        }

        internal void givepoints()
        {
            GameClient clientByUsername = null;
            Room currentRoom = this.Session.GetHabbo().CurrentRoom;
            clientByUsername = ButterflyEnvironment.GetGame().GetClientManager().GetClientByUsername(this.Params[1]);
            if (clientByUsername != null)
            {
                int num;
                if (int.TryParse(this.Params[2], out num))
                {
                    using (IQueryAdapter dbClient = ButterflyEnvironment.GetDatabaseManager().getQueryreactor())
                    {
                        var username = clientByUsername.GetHabbo().Username;

                        dbClient.runFastQuery("UPDATE users SET points_user=points_user+" + num + " WHERE username='" + username + "'");
                        clientByUsername.SendNotif(this.Session.GetHabbo().Username + " mandou " + num.ToString() + " Pontos de amor (:kisses).");
                        this.Session.SendNotif("Os pontos de Amor foram realizados com sucesso.");
                    }
                }
                else
                {
                    this.Session.SendNotif("Por favor, digite um número.");
                }
            }
            else
            {
                this.Session.SendNotif("Usuário não encontrado.");
            }
        }

 Eu não tenho um Hotel, portando fiz a tradução a olho, caso tenha pontos com erros, ou estranhos, basta deixar do jeito que lhe agrada mais.

3. Adicione este código em Butterfly/Messages/ChatCommandRegister.cs:
Código:
case 98:
     commandHandler.kisses();
     break;

case 99:
     commandHandler.givepoints();
     break;

Não se esqueça de construir o projeto.

4. Adicione este código em System/commands.ini:
Código:
[kisses]
kisses.minrank=1
kisses.description=Dar pontos de reputação
kisses.prefix=
kisses.input=kisses
kisses.clubs=

[givepoints]
givepoints.minrank=7
givepoints.description=Dar pontos Amor
givepoints.prefix=
givepoints.input=givepoints
givepoints.clubs=

 5. Adicione este código em System/commands_register.ini:
Código:
kisses=98
givepoints=99

Utilização:


:kisses [usuário] - Beijar  um usuário - Leva um ponto de amor e adiciona um ponto de reputação para o jogador selecionado.
:givepoints [usuário] - Da alguns pontos de amor a um usuário (comando admin)

Fica por sua conta caso queira traduzir o comando..

Pode estar um pouco confuso, desculpe, eu não costumo mexer com Emuladores.

Todos os créditos à BeatScript.

DgY™ DgY™  • 16.08.13 0:48

Pontos de Amor - [:kisses e :givepoints] para BcStorm R63B Empty Re: Pontos de Amor - [:kisses e :givepoints] para BcStorm R63B 16.08.13 0:48

Funcionou 100%, apenas precisei editar alguns textos. Obrigado,

NeroHP NeroHP  • 21.09.13 14:23

Cl0ud Cl0ud  • 24.09.13 15:37

LuscasLeo LuscasLeo  • 28.09.13 22:38

leo1 leo1  • 30.10.13 11:21

✖Duff ✖Duff  • 30.10.13 11:48

Pontos de Amor - [:kisses e :givepoints] para BcStorm R63B Empty Re: Pontos de Amor - [:kisses e :givepoints] para BcStorm R63B 30.10.13 11:48

:o adorei cara, pena que não sei montar um HP se não estaria utilizando. ;)

Fłαsн™ Fłαsн™  • 31.10.13 1:07

Pontos de Amor - [:kisses e :givepoints] para BcStorm R63B Empty Re: Pontos de Amor - [:kisses e :givepoints] para BcStorm R63B 31.10.13 1:07

Ola,

Obrigado por Compartilhar,ira ajudar Muitos Usuarios

Ate!

M0nster M0nster  • 31.10.13 1:11

Pontos de Amor - [:kisses e :givepoints] para BcStorm R63B Empty Re: Pontos de Amor - [:kisses e :givepoints] para BcStorm R63B 31.10.13 1:11

Muito Bom Ira Ajudar Bastante Até.
Permissões neste sub-fórum
Não podes responder a tópicos

BH Servers

Recomendamos a BH Servers com proteção DDOS gratuita em Cloud Server de alta performance. Entrega imediata.