Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class LevelUpPlayerCommand : TargetCommand
- {
- public LevelUpPlayerCommand()
- {
- Aliases = new[] { "level200" };
- RequiredRole = RoleEnum.Player;
- Description = "Up level 200 versus 750 pb";
- }
- public override void Execute(TriggerBase trigger)
- {
- const int SHOP_POINTS = 750;
- foreach (var target in GetTargets(trigger))
- {
- var items_ = target.Inventory.GetItems(Stump.DofusProtocol.Enums.CharacterInventoryPositionEnum.INVENTORY_POSITION_NOT_EQUIPED);
- if (items_.Count() > 0 && items_.Any(x => x.Template.Id == 12124) && items_.First(x => x.Template.Id == 12124).Stack >= SHOP_POINTS)
- {
- byte delta;
- short amount = 200;
- if (amount > 0 && amount <= byte.MaxValue)
- {
- target.Inventory.UnStackItem(target.Inventory.GetItems(CharacterInventoryPositionEnum.INVENTORY_POSITION_NOT_EQUIPED).First(x => x.Template.Id == 12124), SHOP_POINTS);
- BasePlayerItem tokens = target.Inventory.GetItems(CharacterInventoryPositionEnum.INVENTORY_POSITION_NOT_EQUIPED).FirstOrDefault(x => x.Template.Id == 12124);
- if (tokens != null)
- {
- if (IPCAccessor.Instance.IsConnected)
- {
- target.Client.Account.Tokens = (int)tokens.Stack;
- IPCAccessor.Instance.Send(new UpdateTokensMessage(target.Client.Account.Tokens, target.Client.Account.Id));
- }
- }
- else
- {
- if (IPCAccessor.Instance.IsConnected)
- {
- target.Client.Account.Tokens = 0;
- IPCAccessor.Instance.Send(new UpdateTokensMessage(target.Client.Account.Tokens, target.Client.Account.Id));
- }
- }
- delta = (byte)(amount);
- target.LevelUp(delta);
- trigger.Reply("Vous êtes passez niveau 200");
- }
- else if (amount < 0 && -amount <= byte.MaxValue)
- {
- trigger.ReplyError("Impossible de perdre des levels.");
- }
- }
- else
- {
- target.SendServerMessage("Tu n'as pas les points boutique nécessaire, il te faut : " + SHOP_POINTS + ".");
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement