If anybody has or knows where to find a staff application add on please post it here.
Thanks.
Thanks.
Error in packet [475] BODY: [0]~
[0][0][0][0]:
System.NullReferenceException: Object reference not set to an instance of an object.
at Silverwave.HabboHotel.Items.Interactor.InteractorWired.OnTrigger(GameClient Session, RoomItem Item, Int32 Request, Boolean HasRights) in C:\Users\Administrator\Desktop\WonderHotel\Plus Emulator\HabboHotel\Items\Interactor\InteractorWired.cs:line 45
at Silverwave.Messages.GameClientMessageHandler.TriggerItem() in C:\Users\Administrator\Desktop\WonderHotel\Plus Emulator\Messages\Requests\Rooms.cs:line 2540
at Silverwave.Messages.StaticMessageHandlers.SharedPacketLib.TriggerItem(GameClientMessageHandler handler) in C:\Users\Administrator\Desktop\WonderHotel\Plus Emulator\Messages\StaticMessageHandlers\SharedPacketLib.cs:line 540
at Silverwave.Messages.StaticMessageHandlers.StaticClientMessageHandler.HandlePacket(GameClientMessageHandler handler, ClientMessage message) in C:\Users\Administrator\Desktop\WonderHotel\Plus Emulator\Messages\StaticMessageHandlers\StaticClientMessageHandler.cs:line 33
at Silverwave.Messages.GameClientMessageHandler.HandleRequest(ClientMessage request) in C:\Users\Administrator\Desktop\WonderHotel\Plus Emulator\Messages\GameClientMessageHander.cs:line 43
at Silverwave.HabboHotel.GameClients.GameClient.parser_onNewPacket(ClientMessage Message) in C:\Users\Administrator\Desktop\WonderHotel\Plus Emulator\HabboHotel\GameClients\GameClient.cs:line 81
namespace Silverwave.HabboHotel.Rooms.Wired.WiredHandlers.Effects
{
using Silverwave.HabboHotel.Items;
using Silverwave.HabboHotel.Rooms;
using Silverwave.HabboHotel.Rooms.Games;
using Silverwave.HabboHotel.Rooms.Wired;
using Silverwave.HabboHotel.Rooms.Wired.WiredHandlers;
using Silverwave.Messages;
using HabboEvents;
using Silverwave.HabboHotel.Rooms.Wired.WiredHandlers.Interfaces;
using Database_Manager.Database.Session_Details.Interfaces;
using System;
using System.Collections.Generic;
using System.Data;
using System.Drawing;
using System.Runtime.InteropServices;
internal class PositionReset : IWiredTrigger, IWiredCycleable, IWiredEffect
{
private int cycles;
private int delay;
private bool disposed;
private WiredHandler handler;
private uint itemID;
private List<RoomItem> items;
private RoomItemHandling roomItemHandler;
public PositionReset(List<RoomItem> items, int delay, RoomItemHandling roomItemHandler, WiredHandler handler, uint itemID)
{
this.items = items;
this.delay = delay;
this.roomItemHandler = roomItemHandler;
this.cycles = 0;
this.itemID = itemID;
this.handler = handler;
this.disposed = false;
}
public void DeleteFromDatabase(IQueryAdapter dbClient)
{
dbClient.runFastQuery("DELETE FROM trigger_item WHERE trigger_id = '" + this.itemID + "'");
dbClient.runFastQuery("DELETE FROM trigger_in_place WHERE original_trigger = '" + this.itemID + "'");
}
public void Dispose()
{
this.disposed = true;
this.roomItemHandler = null;
this.handler = null;
if (this.items != null)
{
this.items.Clear();
}
this.items = null;
}
public bool Disposed()
{
return this.disposed;
}
public bool Handle(RoomUser user, Team team, RoomItem item)
{
this.cycles = 0;
if (this.delay == 0)
{
return this.HandleItems();
}
this.handler.RequestCycle(this);
return false;
}
private bool HandleItems()
{
this.handler.OnEvent(this.itemID);
bool flag = false;
foreach (RoomItem item in this.items)
{
int oldx = item.GetX;
int oldy = item.GetY;
double oldz = item.GetZ;
int x = GetPosition(this.itemID, item.Id, "x");
int y = GetPosition(this.itemID, item.Id, "y");
int z = GetPosition(this.itemID, item.Id, "z");
if (this.roomItemHandler.SetFloorItem(null, item, x, y, z, false, false, true))
{
ServerMessage mMessage = new ServerMessage(Outgoing.ObjectOnRoller);
mMessage.AppendInt32(oldx);
mMessage.AppendInt32(oldy);
mMessage.AppendInt32(x);
mMessage.AppendInt32(y);
mMessage.AppendInt32(1);
mMessage.AppendInt32(item.Id);
mMessage.AppendString(TextHandling.GetString(oldz));
mMessage.AppendString(TextHandling.GetString(z));
mMessage.AppendInt32(item.Id);
item.GetRoom().SendMessage(mMessage);
item.ExtraData = GetPosition2(itemID, item.Id, "extra");
item.UpdateState();
if (item.GetBaseItem().InteractionType == InteractionType.gate)
{
item.GetRoom().GetGameMap().updateMapForItem(item);
}
flag = true;
}
}
return flag;
}
public bool IsSpecial(out SpecialEffects function)
{
function = SpecialEffects.None;
return false;
}
public string GetPosition2(uint TriggerId, uint ItemId, string PosType)
{
using (IQueryAdapter dbClient = SilverwaveEnvironment.GetDatabaseManager().getQueryreactor())
{
dbClient.setQuery("SELECT original_" + PosType + " FROM trigger_in_place WHERE original_trigger = '" + TriggerId + "' AND triggers_item = '" + ItemId + "'");
return dbClient.getString();
}
}
public int GetPosition(uint TriggerId, uint ItemId, string PosType)
{
using (IQueryAdapter dbClient = SilverwaveEnvironment.GetDatabaseManager().getQueryreactor())
{
dbClient.setQuery("SELECT original_" + PosType + " FROM trigger_in_place WHERE original_trigger = '" + TriggerId + "' AND triggers_item = '" + ItemId + "'");
return dbClient.getInteger();
}
}
public void LoadFromDatabase(IQueryAdapter dbClient, Room insideRoom)
{
dbClient.setQuery("SELECT trigger_data FROM trigger_item WHERE trigger_id = @id ");
dbClient.addParameter("id", (int) this.itemID);
DataRow row = dbClient.getRow();
if (row != null)
{
this.delay = Convert.ToInt32(row[0].ToString());
}
else
{
this.delay = 20;
}
dbClient.setQuery("SELECT triggers_item FROM trigger_in_place WHERE original_trigger = " + this.itemID);
DataTable table = dbClient.getTable();
foreach (DataRow row2 in table.Rows)
{
RoomItem item = insideRoom.GetRoomItemHandler().GetItem(Convert.ToUInt32(row2[0]));
if ((item != null) && !this.items.Contains(item))
{
this.items.Add(item);
}
}
}
public bool OnCycle()
{
this.cycles++;
if (this.cycles > this.delay)
{
this.HandleItems();
return false;
}
return true;
}
public void SaveToDatabase(IQueryAdapter dbClient)
{
WiredUtillity.SaveTriggerItem(dbClient, (int) this.itemID, "integer", string.Empty, this.delay.ToString(), false);
lock (this.items)
{
dbClient.runFastQuery("DELETE FROM trigger_in_place WHERE original_trigger = '" + this.itemID + "'");
foreach (RoomItem item in this.items)
{
WiredUtillity.SaveTrigger(dbClient, (int) this.itemID, (int) item.Id, item.GetX, item.GetY, item.Rot, item.GetZ, item.ExtraData);
}
}
}
}
}
id, dopperid, itemid, minimum_quantity, maximum_quantity, questid, chance
11210, 9420550, 1003025, 1, 3, 0, 999999
11211, 9420550, 1003026, 1, 3, 0, 999999
000004.129| WOApi: api_LoginSessionPoller.aspx NETWORK time: 0.0265
000004.129| WO_API: returned http404