[FURNIS] [WIREDS] [Cloud Server/Osore] Dar diamantes y dar GOTW points (editado)

  • 6 Respuestas
  • 846 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

*

Desconectado Alhxe

Es un pequeño aporte, si alguien necesita para Plus podría conseguirse fácilmente.  Los GOTW points son monedas como la fama, gemas, etc. Cambiad la descripción dependiendo del nombre de vuestra moneda.

SQL:
Spoiler para Oculto:
Citar
INSERT INTO `furniture` (`id`, `item_name`, `public_name`, `type`, `width`, `length`, `stack_height`, `can_stack`, `can_sit`, `is_walkable`, `sprite_id`, `allow_recycle`, `allow_trade`, `allow_marketplace_sell`, `allow_gift`, `allow_inventory_stack`, `interaction_type`, `behaviour_data`, `interaction_modes_count`, `vending_ids`, `height_adjustable`, `effect_id`, `wired_id`, `is_rare`, `clothing_id`, `extra_rot`) VALUES
(49594936, 'wf_give_fama11', 'SuperWired: Dar Fama', 's', 1, 0, 0.4, '1', '0', '0', 49594936, '0', '1', '0', '0', '1', 'wired_effect', 74, 2, '0', '0', 0, 74, '0', 0, '0');

INSERT INTO `catalog_items` (`id`, `page_id`, `item_id`, `catalog_name`, `cost_credits`, `cost_pixels`, `cost_diamonds`, `cost_gotw`, `amount`, `limited_sells`, `limited_stack`, `offer_active`, `extradata`, `badge`, `offer_id`, `predesigned_id`) VALUES
(49594936, ID PÁGINA, '49594936', 'SuperWired: Dar Fama', 3, 0, 0, 0, 1, 0, 0, '1', '', '', -1, 0);

INSERT INTO `furniture` (`id`, `item_name`, `public_name`, `type`, `width`, `length`, `stack_height`, `can_stack`, `can_sit`, `is_walkable`, `sprite_id`, `allow_recycle`, `allow_trade`, `allow_marketplace_sell`, `allow_gift`, `allow_inventory_stack`, `interaction_type`, `behaviour_data`, `interaction_modes_count`, `vending_ids`, `height_adjustable`, `effect_id`, `wired_id`, `is_rare`, `clothing_id`, `extra_rot`) VALUES
(49594935, 'wf_give_diamod', 'SuperWired: Dar Diamantes', 's', 1, 0, 0.4, '1', '0', '0', 49594935, '0', '1', '0', '0', '1', 'wired_effect', 73, 2, '0', '0', 0, 73, '0', 0, '0');

INSERT INTO `catalog_items` (`id`, `page_id`, `item_id`, `catalog_name`, `cost_credits`, `cost_pixels`, `cost_diamonds`, `cost_gotw`, `amount`, `limited_sells`, `limited_stack`, `offer_active`, `extradata`, `badge`, `offer_id`, `predesigned_id`) VALUES
(49594935, ID PÁGINA, '49594935', 'SuperWired: Dar Diamantes', 3, 0, 0, 0, 1, 0, 0, '1', '', '', -1, 0);

FIGUREDATA:
Spoiler para Oculto:
Citar
<furnitype id="49594936" classname="wf_give_fama11">
<revision>49594935</revision>
<defaultdir>0</defaultdir>
<xdim>1</xdim>
<ydim>1</ydim>
<partcolors/>
<name>Super Wired: Enviar Fama</name>
<description>
Envía una cantidad de fama.
</description>
<adurl/>
<offerid>-1</offerid>
<buyout>1</buyout>
<rentofferid>-1</rentofferid>
<rentbuyout>0</rentbuyout>
<bc>0</bc>
<excludeddynamic>0</excludeddynamic>
<customparams>0</customparams>
<specialtype>1</specialtype>
<canstandon>1</canstandon>
<cansiton>0</cansiton>
<canlayon>0</canlayon>
</furnitype>

<furnitype id="49594935" classname="wf_give_diamod">
<revision>49594935</revision>
<defaultdir>0</defaultdir>
<xdim>1</xdim>
<ydim>1</ydim>
<partcolors/>
<name>Super Wired: Enviar Diamantes</name>
<description>
Mandar Diamantes a alguien.
</description>
<adurl/>
<offerid>-1</offerid>
<buyout>1</buyout>
<rentofferid>-1</rentofferid>
<rentbuyout>0</rentbuyout>
<bc>0</bc>
<excludeddynamic>0</excludeddynamic>
<customparams>0</customparams>
<specialtype>1</specialtype>
<canstandon>1</canstandon>
<cansiton>0</cansiton>
<canlayon>0</canlayon>
</furnitype>

SWF/ICONS:
Spoiler para Oculto:
No tienes permiso para ver enlaces. Registrarme ó Logearme
VT:No tienes permiso para ver enlaces. Registrarme ó Logearme

Todos los derechos  SWF/Icono del wired de diamante a su respectivo autor.

Ahora toca editar unos archivos del emu para que funcione.

(Desde Visual Studio) Vamos a HabboHotel>Items>Wired>Boxes>Effects y creamos los archivos GiveUserDiamondsBox.cs y GiveUserGOTWPointsBox.cs dentro les pondremos por orden respectivamente:

Diamantes:
Spoiler para Oculto:
Citar
using System;
using System.Collections.Concurrent;
using Cloud.Communication.Packets.Outgoing.Inventory.Purse;
using Cloud.Communication.Packets.Outgoing.Rooms.Notifications;
using Cloud.Communication.Packets.Incoming;
using Cloud.HabboHotel.Rooms;
using Cloud.HabboHotel.Users;

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

        public GiveUserDiamondsBox(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();
            string Diamond = Packet.PopString();

            this.StringData = Diamond;
        }

        public bool Execute(params object[] Params)
        {
            if (Params == null || Params.Length == 0)
                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 Amount;
            Amount = Convert.ToInt32(StringData);
            if (Amount > 500)
            {
                Player.GetClient().SendWhisper("La cantidad de Diamantes pasa de los limites.");
                return false;
            }
            else
            {
                string Diamond = StringData;

                Player.GetClient().GetHabbo().Diamonds += Amount;
                Player.GetClient().SendMessage(new HabboActivityPointNotificationComposer(Player.GetClient().GetHabbo().Diamonds, Amount, 5));
                Player.GetClient().SendMessage(new RoomNotificationComposer("command_notification_credits", "message", "Has recibido " + Diamond + " Diamante(s)!"));
                return true;
            }
        }   
    }
}

GOTW:
Spoiler para Oculto:
Citar
using System;
using System.Collections.Concurrent;
using Cloud.Communication.Packets.Outgoing.Inventory.Purse;
using Cloud.Communication.Packets.Outgoing.Rooms.Notifications;
using Cloud.Communication.Packets.Incoming;
using Cloud.HabboHotel.Rooms;
using Cloud.HabboHotel.Users;

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

        public GiveUserGOTWPointsBox(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();
            string GOTWPoint = Packet.PopString();

            this.StringData = GOTWPoint;
        }

        public bool Execute(params object[] Params)
        {
            if (Params == null || Params.Length == 0)
                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 Amount;
            Amount = Convert.ToInt32(StringData);
            if (Amount > 30)
            {
                Player.GetClient().SendWhisper("La cantidad de GOTWPoints pasa de los limites.");
                return false;
            }
            else
            {
                string GOTWPoint = StringData;

                string Diamond = StringData;

                Player.GetClient().GetHabbo().GOTWPoints = Player.GetClient().GetHabbo().GOTWPoints + Amount;
                Player.GetClient().SendMessage(new HabboActivityPointNotificationComposer(Player.GetClient().GetHabbo().GOTWPoints, Amount, 103));
                Player.GetClient().SendMessage(new RoomNotificationComposer("command_notification_credits", "message", "Has recibido " + Amount + " " + Core.ExtraSettings.PTOS_COINS + "!"));
                return true;
            }
        }
    }
}

Vamos al archivo WiredBoxType.cs en HabboHotel>Items>Wired y buscamos:
Citar
EffectGiveUserCreditsBox

Justo después le añadimos:

Citar
        EffectGiveUserDiamondsBox,
        EffectGiveUserGOTWPointsBox,

Ahora vamos al archivo WiredBoxUtility.cs ubicado en la misma carpeta. Buscamos:

Citar
                case 72:
                    return WiredBoxType.EffectFastWalkUserBox;

Y justo añadimos:

Citar
                case 73:
                    return WiredBoxType.EffectGiveUserDiamondsBox;
                case 74:
                    return WiredBoxType.EffectGiveUserGOTWPointsBox;

Spoiler para Oculto:
Si tienes otros efectos con los mismos 'case', pon en estos otra ID libre. Recuerda que luego tendrás que poner en el furniture de ambos wireds las ids correspondientes al efecto en 'behaviour_data' y 'wired id'

En el mismo archivo buscamos:

Citar
return 7

y justo antes de ese código, añadimos:

Citar
                case WiredBoxType.EffectGiveUserDiamondsBox:
                case WiredBoxType.EffectGiveUserGOTWPointsBox:

Ahora vamos al archivo WiredComponent.cs en HabboHotel>Rooms>Instance, buscamos:

Citar
                case WiredBoxType.EffectGiveUserCreditsBox:
                    return new GiveUserCreditsBox(_room, Item);

y justo después añadimos:

Citar
                case WiredBoxType.EffectGiveUserDiamondsBox:
                    return new GiveUserDiamondsBox(_room, Item);
                case WiredBoxType.EffectGiveUserGOTWPointsBox:
                    return new GiveUserGOTWPointsBox(_room, Item);

Imágenes:
Spoiler para Oculto:








PD: El wired de Fama ha sido actualizado y ya otorga una notificación como cuando da diamantes y se añade la cantidad automáticamente en el client sin necesidad de reiniciar.
« Última modificación: Julio 29, 2018, 04:22:13 pm por Alhxe »
'Nobody know nothing'

*

Desconectado SrKratos

Re:[FURNIS] [WIREDS] [Cloud Server/Osore] Dar diamantes y dar GOTW points.
« Respuesta #1 en: Julio 28, 2018, 04:56:15 am »
Wowww buenísimo aporte
« Última modificación: Julio 28, 2018, 08:48:14 am por SrKratos »

*

Desconectado SrKratos

Re:[FURNIS] [WIREDS] [Cloud Server/Osore] Dar diamantes y dar GOTW points.
« Respuesta #2 en: Julio 28, 2018, 08:47:51 am »
Buen aporte men, sigue así aportando.

*

Desconectado SrKratos

Re:[FURNIS] [WIREDS] [Cloud Server/Osore] Dar diamantes y dar GOTW points.
« Respuesta #3 en: Julio 28, 2018, 08:48:51 am »
 [smiley16] [smiley16] [smiley16]

*

Desconectado Alhxe

Re:[FURNIS] [WIREDS] [Cloud Server/Osore] Dar diamantes y dar GOTW points.
« Respuesta #4 en: Julio 28, 2018, 03:06:31 pm »
Gracias SrKratos ^^
'Nobody know nothing'

*

zSpectrum

Ya te iba a decir sobre lo del reinicio innecesario, pero veo que ya lo corregiste  [smiley60] ... Buen aporte  [smiley58]

*

Desconectado FN 2187

Sirve para el emu de este vídeo?: Este emu es Plus Emulador :) el q me gusta.
/>
O este emu: Es el Cloud Server de HLatino.
/>
PD: Quiero los wireds :v.
XKekos.TV Tu mejor opción, entra y registrate.

 

Temas relacionados

  Asunto / Iniciado por Respuestas Último mensaje
1 Respuestas
607 Vistas
Último mensaje Diciembre 07, 2017, 08:30:43 pm
por zHidden
1 Respuestas
325 Vistas
Último mensaje Julio 04, 2018, 11:06:43 am
por Carlosd4929
19 Respuestas
2731 Vistas
Último mensaje Abril 21, 2019, 03:37:33 am
por Palys
16 Respuestas
1275 Vistas
Último mensaje Noviembre 16, 2018, 04:13:56 am
por Agar.
0 Respuestas
120 Vistas
Último mensaje Julio 17, 2019, 04:09:56 am
por Zorkon