Compartilhe
Ir em baixo
avatar
Membro Prata

Titulo :  
Registro : 22/04/2016
Mensagens : 728
Reputação : 125

Ver perfil do usuário

[ TUTORIAL ] Adicionar o super wired

em Seg 2 Jan 2017 - 16:04
Reputação da mensagem: 100% (1 votos)
[Você precisa estar registrado e conectado para ver esta imagem.]

Com este wired, sua premiação em jogos / eventos ficará bem mais fácil.





Tutorial:
INFO: Antes de tudo você irá precisa do Microsoft Visual Studio.


1- Abra a source do seu emulador, como mostrado no print (destacado de amarelo):
[Você precisa estar registrado e conectado para ver esta imagem.]

2- Cole todo esse código lá dentro:
Código:

using System;
using System.Linq;
using System.Text;
using System.Collections.Generic;
using System.Collections.Concurrent;
using Plus.Communication.Packets.Outgoing.Handshake;

using Plus.Communication.Packets.Incoming;
using Plus.HabboHotel.Rooms;
using Plus.HabboHotel.Users;
using Plus.Communication.Packets.Outgoing.Rooms.Chat;
using Plus.Communication.Packets.Outgoing.Inventory.Furni;
using Plus.Communication.Packets.Outgoing.Catalog;

namespace Plus.HabboHotel.Items.Wired.Boxes.Effects
{
    class GiveRewardBox : IWiredItem
    {
        public Room Instance { get; set; }
        public Item Item { get; set; }
        public WiredBoxType Type { get { return WiredBoxType.EffectGiveReward; } }
        public ConcurrentDictionary<int, Item> SetItems { get; set; }
        public string StringData { get; set; }
        public bool BoolData { get; set; }
        public string ItemsData { get; set; }

        public GiveRewardBox(Room Instance, Item Item)
        {
            this.Instance = Instance;
            this.Item = Item;
            this.SetItems = new ConcurrentDictionary<int, Item>();
        }

        public void HandleSave(ClientPacket Packet)
        {
            int Unknown = Packet.PopInt();
            int Often = Packet.PopInt();
            bool Unique = (Packet.PopInt() == 1);
            int Limit = Packet.PopInt();
            int Often_No = Packet.PopInt();
            string Reward = Packet.PopString();

            this.BoolData = Unique;
            this.StringData = Reward + "-" + Often + "-" + Limit;
        }

        public bool Execute(params object[] Params)
        {
            if (Params == null || Params.Length == 0)
                return false;

            Habbo Owner = PlusEnvironment.GetHabboById(Item.UserID);
            if (Owner == null || !Owner.GetPermissions().HasRight("room_item_wired_rewards"))
                return false;

            Habbo Player = (Habbo)Params[0];
            if (Player == null || Player.GetClient() == null)
                return false;

            RoomUser User = Player.CurrentRoom.GetRoomUserManager().GetRoomUserByHabbo(Player.Username);
            if (User == null)
                return false;

            if (String.IsNullOrEmpty(StringData))
                return false;

            int amountLeft = int.Parse(this.StringData.Split('-')[2]);
            int often = int.Parse(this.StringData.Split('-')[1]);
            bool unique = this.BoolData;

            bool premied = false;

            if (amountLeft == 1)
            {
                Player.GetClient().SendNotification("Os prêmios acabaram, volte mais tarde.");
                return true;
            }

            foreach (var dataStr in (this.StringData.Split('-')[0]).Split(';'))
            {
                var dataArray = dataStr.Split(',');

                var isbadge = dataArray[0] == "0";
                var code = dataArray[1];
                var percentage = int.Parse(dataArray[2]);

                var random = PlusEnvironment.GetRandomNumber(0, 100);

                if (!unique && percentage < random)

                    continue;

                premied = true;


                if (isbadge)
                {

                    if (Player.GetBadgeComponent().HasBadge(code))
                        Player.GetClient().SendMessage(new WhisperComposer(User.VirtualId, "Oops, parece que você já tem este emblema.", 0, User.LastBubble));
                    
                    else
                    {
                        Player.GetBadgeComponent().GiveBadge(code, true, Player.GetClient());
                        Player.GetClient().SendNotification("Você recebeu um emblema!");
                    }
                }
                else
                {
                    ItemData ItemData = null;

                    if (!PlusEnvironment.GetGame().GetItemManager().GetItem(int.Parse(code), out ItemData))
                    {
                        Player.GetClient().SendMessage(new WhisperComposer(User.VirtualId, "ITEM ID não existe: " + code, 0, User.LastBubble));
                        return false;
                    }

                    Item Itemc = ItemFactory.CreateSingleItemNullable(ItemData, Player.GetClient().GetHabbo(), "", "", 0, 0, 0);


                    if (Itemc != null)
                    {
                        Player.GetClient().GetHabbo().GetInventoryComponent().TryAddItem(Itemc);
                        Player.GetClient().SendMessage(new FurniListNotificationComposer(Itemc.Id, 1));
                        Player.GetClient().SendMessage(new PurchaseOKComposer());
                        Player.GetClient().SendMessage(new FurniListAddComposer(Itemc));
                        Player.GetClient().SendMessage(new FurniListUpdateComposer());
                        Player.GetClient().SendNotification("Você acaba de receber um mobi, confira o seu inventário.");
                    }
                }
            }

            if (!premied)
            {
                Player.GetClient().SendNotification("Sorte da próxima vez. :(");
            }
            else if (amountLeft > 1)
            {
                amountLeft--;
                this.StringData.Split('-')[2] = amountLeft.ToString();
            }

            return true;
        }
    }

}

Ou se preferir aqui
3- Agora clique em START como mostrado no print: 


[Você precisa estar registrado e conectado para ver esta imagem.]


4- Vá até a sua DB, clique em Furniture e em seguida clique em PESQUISAR:

[Você precisa estar registrado e conectado para ver esta imagem.]

5- Procure por wf_act_give_userbadge e aperte em executar:
INFO: O Executar fica no final da página.

[Você precisa estar registrado e conectado para ver esta imagem.]

6- Você irá encontrar 1 resultado apenas, neste resultado você clique em EDITA:

[Você precisa estar registrado e conectado para ver esta imagem.]

7- Após ter efetuado o passo 6, vá até wired_id e mude-o mesmo para 40 e clique em Executar:

[Você precisa estar registrado e conectado para ver esta imagem.]

8- Dê update no catálogo e nos items (:update catalog; :update furnis) e teste.

Imagens do funcionamento:


[Você precisa estar registrado e conectado para ver esta imagem.]

Créditos:
~ [Você precisa estar registrado e conectado para ver este link.]
~ Unc. Team
avatar
Membro Ouro

Titulo : Deus é minha força!
Registro : 22/02/2015
Mensagens : 1177
Reputação : 146

Ver perfil do usuáriohttp://www.hostclio.com

Re: [ TUTORIAL ] Adicionar o super wired

em Seg 2 Jan 2017 - 16:07
Estava precisando pro meu hotel, obrigado mesmo!
avatar
Membro Prata

Titulo :  
Registro : 22/04/2016
Mensagens : 728
Reputação : 125

Ver perfil do usuário

Re: [ TUTORIAL ] Adicionar o super wired

em Seg 2 Jan 2017 - 16:14
Marshmello escreveu:Estava precisando pro meu hotel, obrigado mesmo!
É nois ehehe. Se ajudei da um like +
avatar
Membro Diamante

Titulo :  
Registro : 31/03/2012
Mensagens : 1612
Reputação : 169

Ver perfil do usuáriohttp://www.hapixel.com.br

Re: [ TUTORIAL ] Adicionar o super wired

em Seg 2 Jan 2017 - 16:16
vai ajudar bastante a galera tava pedindo por isso ai.
avatar
Membro Prata

Titulo :  
Registro : 22/04/2016
Mensagens : 728
Reputação : 125

Ver perfil do usuário

Re: [ TUTORIAL ] Adicionar o super wired

em Seg 2 Jan 2017 - 16:26
[Você precisa estar registrado e conectado para ver este link.] escreveu:vai ajudar bastante a galera tava pedindo por isso ai.
É o que eu espero..
avatar
Membro

Titulo :  
Registro : 17/02/2017
Mensagens : 12
Reputação : 1

Ver perfil do usuário

Re: [ TUTORIAL ] Adicionar o super wired

em Sex 17 Fev 2017 - 21:26
Muito bem, ajudou muito
avatar
Novato

Titulo :  
Registro : 10/03/2017
Mensagens : 6
Reputação : 0

Ver perfil do usuário

Re: [ TUTORIAL ] Adicionar o super wired

em Seg 3 Abr 2017 - 6:34
.......
avatar
Membro Prata

Titulo :  
Registro : 06/06/2015
Mensagens : 560
Reputação : 23

Ver perfil do usuário

Re: [ TUTORIAL ] Adicionar o super wired

em Seg 3 Abr 2017 - 6:37
[alerta=Moderação]
Niickk tome cuidado com os comentários inúteis.
Peço a todos os Iniciantes e Membros que leiam as regras clicando [Você precisa estar registrado e conectado para ver este link.]
[/alerta]
avatar
Membro Ouro

Titulo : meiguinha
Registro : 02/05/2015
Mensagens : 1264
Reputação : 106

Ver perfil do usuário

Re: [ TUTORIAL ] Adicionar o super wired

em Seg 3 Abr 2017 - 10:36
Eu ainda não tinha visto esse tutorial, mas enfim, é muito útil, obrigada por trazer para o fórum!
avatar
Membro

Titulo :  
Registro : 27/04/2017
Mensagens : 52
Reputação : 0

Ver perfil do usuário

Re: [ TUTORIAL ] Adicionar o super wired

em Seg 22 Maio 2017 - 11:06
Gostei do tutorial, poderia min adicionar no skype pra eu conversa um assunto importante contigo.
Skp : facebook:jogohabbo2017
avatar
Membro

Titulo :  
Registro : 17/05/2017
Mensagens : 56
Reputação : 0

Ver perfil do usuário

Re: [ TUTORIAL ] Adicionar o super wired

em Seg 22 Maio 2017 - 22:28
testando
avatar
Membro Elite

Titulo :
Registro : 10/01/2014
Mensagens : 4677
Reputação : 666

Ver perfil do usuário

Re: [ TUTORIAL ] Adicionar o super wired

em Seg 22 Maio 2017 - 23:00
MODERAÇÃO
Usuário: Marcondes
Quantidade: +1
Motivo: Postagem inútil
[Você precisa estar registrado e conectado para ver este link.]
avatar
Honorário

Titulo : Eu sou o TrY! Vulgo "Imperador".
Registro : 12/09/2011
Mensagens : 17874
Reputação : 345

Ver perfil do usuáriohttp://www.power-pixel.net/forum

Re: [ TUTORIAL ] Adicionar o super wired

em Ter 23 Maio 2017 - 1:51
Olá,

De fato o tutorial aparenta ser bem útil. Obrigado por compartilhar.
Conteúdo patrocinado

Re: [ TUTORIAL ] Adicionar o super wired

Voltar ao Topo
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum