protected void Awake() { // setup static fields s_Instance = this; OpenTibiaUnity.GraphicsVendor = SystemInfo.graphicsDeviceVendor; OpenTibiaUnity.GraphicsDevice = SystemInfo.graphicsDeviceName; OpenTibiaUnity.GraphicsVersion = SystemInfo.graphicsDeviceVersion; OpenTibiaUnity.MainThread = Thread.CurrentThread; WindowPtr = FindWindow(null, "OpenTibiaUnity"); Features = new System.Collections.BitArray(new bool[(int)GameFeatures.LastGameFeature]); // setup threading mutex & lockers m_ActionQueue = new Queue <UnityAction>(); // quit-notification related m_ExitWindow = null; OpenTibiaUnity.Quiting = false; // events OnSecondaryTimeCheck = new ElapsedEvent(); OnTacticsChangeEvent = new TacticsChangeEvent(); // setup ingame facilities OptionStorage = new Options.OptionStorage(); InputHandler = new InputManagment.InputHandler(); AppearanceStorage = new Appearances.AppearanceStorage(); CreatureStorage = new Creatures.CreatureStorage(); MiniMapStorage = new MiniMap.MiniMapStorage(); MiniMapRenderer = new MiniMap.Rendering.MiniMapRenderer(); WorldMapStorage = new WorldMap.WorldMapStorage( LabelMessageBoxBottom, LabelMessageBoxLow, LabelMessageBoxHigh, LabelMessageBoxTop, LabelOnscreenMessageBoxPrefab); WorldMapRenderer = new WorldMap.Rendering.WorldMapRenderer(); ChatStorage = new Chat.ChatStorage(OptionStorage); MessageStorage = new Chat.MessageStorage(); ContainerStorage = new Container.ContainerStorage(); // Load options OptionStorage.LoadOptions(); // update input settings InputHandler.UpdateMapping(); // initialize rendering textures WorldMapRenderingTexture.Initialize(); WorldMapRenderingTexture.IncrementUpdateCount(); // initializing events onClientVersionChange = new VersionChangeEvent(); onProtocolVersionChange = new VersionChangeEvent(); }
protected void ShowNextOnscreenMessage() { if (m_NextOnscreenMessageIndex < m_TextPieces.Count) { if (IsNpcInReach()) { m_LastOnscreenBox = OpenTibiaUnity.WorldMapStorage.AddOnscreenMessage(m_Position, 0, m_Speaker, 0, MessageModes.NpcFrom, m_TextPieces[m_NextOnscreenMessageIndex]); m_MinTimeForNextOnscreenMessage = OpenTibiaUnity.TicksMillis + (int)MessageStorage.s_GetTalkDelay(m_TextPieces[m_NextOnscreenMessageIndex]); m_NextOnscreenMessageIndex++; } else { m_NextOnscreenMessageIndex = m_TextPieces.Count; } } }
protected void ShowNextOnscreenMessage() { if (_nextOnscreenMessageIndex < _textPieces.Count) { if (IsNpcInReach()) { _lastOnscreenBox = OpenTibiaUnity.WorldMapStorage.AddOnscreenMessage(_position, 0, _speaker, 0, MessageModeType.NpcFrom, _textPieces[_nextOnscreenMessageIndex]); _minTimeForNextOnscreenMessage = OpenTibiaUnity.TicksMillis + (int)MessageStorage.s_GetTalkDelay(_textPieces[_nextOnscreenMessageIndex]); _nextOnscreenMessageIndex++; } else { _nextOnscreenMessageIndex = _textPieces.Count; } } }