Como Adicionar Comando :CloseDice 14.01.17 20:46
Hoje vou ensinar como adicionar o comando closedice para fechar todos os dices á sua
volta sem precisar clicar em nada! :shock:
VAMOS LÁ AO TUTORIAL:
Vá até Gamemap.cs e procure:
Em cima desse código adicione esse:
Vá a RoomUser.cs e procure:
Abaixo desse código adicione esse:
Crie uma nova class chamada de CloseDiceCommand.cs em HabboHotel/Rooms/Chat/Commands/User e adicione o seguinte código:
Para registrar o comando vá a CommandManager.cs e procure:
Abaixo desse código adicione esse:
Dê debug no emulador e seja feliz!
E aqui finalizamos o nosso tutorial, espero que dê bom uso pra vocês!
Abraço! :D :lol:
volta sem precisar clicar em nada! :shock:
VAMOS LÁ AO TUTORIAL:
Vá até Gamemap.cs e procure:
- Código:
public static bool TilesTouching(int X1, int Y1, int X2, int Y2)
Em cima desse código adicione esse:
- Código:
public static bool TilesTouching(Point p1, Point p2)
{
return TilesTouching(p1.X, p1.Y, p2.X, p2.Y);
}
Vá a RoomUser.cs e procure:
- Código:
public int VirtualId;
Abaixo desse código adicione esse:
- Código:
public Point Point => new Point(Position.X, Position.Y);
Crie uma nova class chamada de CloseDiceCommand.cs em HabboHotel/Rooms/Chat/Commands/User e adicione o seguinte código:
- Código:
[ltr]using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Plus.HabboHotel.Rooms.Chat.Commands.User
{
class CloseDiceCommand : IChatCommand
{
public string PermissionRequired
{
get { return "command_close_dice"; }
}
public string Parameters
{
get { return ""; }
}
public string Description
{
get { return "Closes your dice when in a tradition 5 die booth."; }
}
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params)
{
RoomUser roomUser = Room?.GetRoomUserManager()?.GetRoomUserByHabbo(Session.GetHabbo().Id);
if (roomUser == null)
{
return;
}
List<Items.Item> userBooth = Room.GetRoomItemHandler().GetFloor.Where(x => x != null && Gamemap.TilesTouching(
x.Coordinate, roomUser.Point) && x.Data.InteractionType == Items.InteractionType.DICE).ToList();
if(userBooth.Count != 5)
{
Session.SendWhisper("You must be in a booth with 5 dice.");
return;
}
userBooth.ForEach(x => {
x.ExtraData = "0";
x.UpdateState();
});
Session.SendWhisper("Your booth dice have been closed");
}
}
}[/ltr]
Para registrar o comando vá a CommandManager.cs e procure:
- Código:
this.Register("disablemimic", new DisableMimicCommand());
Abaixo desse código adicione esse:
- Código:
this.Register("closedice", new CloseDiceCommand());
Dê debug no emulador e seja feliz!
E aqui finalizamos o nosso tutorial, espero que dê bom uso pra vocês!
Abraço! :D :lol: