예제 #1
0
 // Token: 0x06002AB1 RID: 10929 RVA: 0x00108D59 File Offset: 0x00107159
 public void sendMessage(EPlayerMessage message)
 {
     this.channel.send("askMessage", ESteamCall.OWNER, ESteamPacket.UPDATE_UNRELIABLE_BUFFER, new object[]
     {
         (byte)message
     });
 }
        // Token: 0x06002176 RID: 8566 RVA: 0x000B6E68 File Offset: 0x000B5268
        public override bool checkHint(out EPlayerMessage message, out string text, out Color color)
        {
            int i = 0;

            while (i < base.objectAsset.interactabilityConditions.Length)
            {
                INPCCondition inpccondition = base.objectAsset.interactabilityConditions[i];
                if (!inpccondition.isConditionMet(Player.player))
                {
                    text  = inpccondition.formatCondition(Player.player);
                    color = Color.white;
                    if (string.IsNullOrEmpty(text))
                    {
                        message = EPlayerMessage.NONE;
                        return(false);
                    }
                    message = EPlayerMessage.CONDITION;
                    return(true);
                }
                else
                {
                    i++;
                }
            }
            message = EPlayerMessage.INTERACT;
            text    = base.objectAsset.interactabilityText;
            color   = Color.white;
            return(true);
        }
예제 #3
0
 // Token: 0x0600210C RID: 8460 RVA: 0x000B47FC File Offset: 0x000B2BFC
 public override bool checkHint(out EPlayerMessage message, out string text, out Color color)
 {
     message = EPlayerMessage.ITEM;
     text    = this.asset.itemName;
     color   = ItemTool.getRarityColorUI(this.asset.rarity);
     return(true);
 }
예제 #4
0
 // Token: 0x0600216B RID: 8555 RVA: 0x000B67D4 File Offset: 0x000B4BD4
 public override bool checkHint(out EPlayerMessage message, out string text, out Color color)
 {
     message = EPlayerMessage.TALK;
     text    = string.Empty;
     color   = Color.white;
     return(!PlayerUI.window.showCursor);
 }
예제 #5
0
 public override bool checkHint(out EPlayerMessage message, out string text, out Color color)
 {
     message = EPlayerMessage.VOLUME_FUEL;
     text    = string.Empty;
     color   = Color.white;
     return(true);
 }
예제 #6
0
 // Token: 0x0600208C RID: 8332 RVA: 0x000B2F14 File Offset: 0x000B1314
 public virtual bool checkHint(out EPlayerMessage message, out string text, out Color color)
 {
     message = EPlayerMessage.NONE;
     text    = string.Empty;
     color   = Color.white;
     return(false);
 }
예제 #7
0
 // Token: 0x060020CA RID: 8394 RVA: 0x000B3A28 File Offset: 0x000B1E28
 public override bool checkHint(out EPlayerMessage message, out string text, out Color color)
 {
     text  = string.Empty;
     color = Color.white;
     if (!base.isWired)
     {
         message = EPlayerMessage.POWER;
         return(true);
     }
     message = EPlayerMessage.NONE;
     return(false);
 }
 // Token: 0x06002094 RID: 8340 RVA: 0x000B2F68 File Offset: 0x000B1368
 public override bool checkHint(out EPlayerMessage message, out float data)
 {
     message = EPlayerMessage.SALVAGE;
     if (this.hp != null)
     {
         data = (float)this.hp.hp / 100f;
     }
     else
     {
         data = 0f;
     }
     return(base.hasOwnership);
 }
예제 #9
0
        // Token: 0x06002162 RID: 8546 RVA: 0x000B5D38 File Offset: 0x000B4138
        public override bool checkHint(out EPlayerMessage message, out string text, out Color color)
        {
            for (int i = 0; i < base.objectAsset.interactabilityConditions.Length; i++)
            {
                INPCCondition inpccondition = base.objectAsset.interactabilityConditions[i];
                if (!inpccondition.isConditionMet(Player.player))
                {
                    message = EPlayerMessage.CONDITION;
                    text    = inpccondition.formatCondition(Player.player);
                    color   = Color.white;
                    return(true);
                }
            }
            if (base.objectAsset.interactabilityPower != EObjectInteractabilityPower.NONE && !base.isWired)
            {
                message = EPlayerMessage.POWER;
            }
            else
            {
                switch (base.objectAsset.interactabilityHint)
                {
                case EObjectInteractabilityHint.DOOR:
                    message = EPlayerMessage.DOOR_OPEN;
                    break;

                case EObjectInteractabilityHint.SWITCH:
                    message = EPlayerMessage.SPOT_ON;
                    break;

                case EObjectInteractabilityHint.FIRE:
                    message = EPlayerMessage.FIRE_ON;
                    break;

                case EObjectInteractabilityHint.GENERATOR:
                    message = EPlayerMessage.GENERATOR_ON;
                    break;

                case EObjectInteractabilityHint.USE:
                    message = EPlayerMessage.USE;
                    break;

                default:
                    message = EPlayerMessage.NONE;
                    break;
                }
            }
            text  = string.Empty;
            color = Color.white;
            return(true);
        }
 // Token: 0x0600213F RID: 8511 RVA: 0x000B54AE File Offset: 0x000B38AE
 public override bool checkHint(out EPlayerMessage message, out string text, out Color color)
 {
     if (this.checkUseable())
     {
         message = EPlayerMessage.USE;
     }
     else
     {
         message = EPlayerMessage.LOCKED;
     }
     text  = string.Empty;
     color = Color.white;
     return(!PlayerUI.window.showCursor);
 }
예제 #11
0
 public override bool checkHint(out EPlayerMessage message, out string text, out Color color)
 {
     if (this.checkUseable())
     {
         message = EPlayerMessage.FARM;
     }
     else
     {
         message = EPlayerMessage.GROW;
     }
     text  = string.Empty;
     color = Color.white;
     return(true);
 }
예제 #12
0
 public override bool checkHint(out EPlayerMessage message, out string text, out Color color)
 {
     text  = string.Empty;
     color = Color.white;
     if (this.checkUseable())
     {
         message = EPlayerMessage.STORAGE;
     }
     else
     {
         message = EPlayerMessage.LOCKED;
     }
     return(true);
 }
예제 #13
0
 public override bool checkHint(out EPlayerMessage message, out string text, out Color color)
 {
     if (this.isPowered)
     {
         message = EPlayerMessage.GENERATOR_OFF;
     }
     else
     {
         message = EPlayerMessage.GENERATOR_ON;
     }
     text  = string.Empty;
     color = Color.white;
     return(true);
 }
예제 #14
0
 // Token: 0x06002180 RID: 8576 RVA: 0x000B7074 File Offset: 0x000B5474
 public override bool checkHint(out EPlayerMessage message, out string text, out Color color)
 {
     if (base.objectAsset.interactability == EObjectInteractability.WATER)
     {
         message = EPlayerMessage.VOLUME_WATER;
         text    = this.amount + "/" + this.capacity;
     }
     else
     {
         message = EPlayerMessage.VOLUME_FUEL;
         text    = string.Empty;
     }
     color = Color.white;
     return(true);
 }
예제 #15
0
 public override bool checkHint(out EPlayerMessage message, out string text, out Color color)
 {
     if (this.source == ETankSource.WATER)
     {
         message = EPlayerMessage.VOLUME_WATER;
         text    = this.amount + "/" + this.capacity;
     }
     else
     {
         message = EPlayerMessage.VOLUME_FUEL;
         text    = string.Empty;
     }
     color = Color.white;
     return(true);
 }
예제 #16
0
        // Token: 0x06002172 RID: 8562 RVA: 0x000B6D18 File Offset: 0x000B5118
        public override bool checkHint(out EPlayerMessage message, out string text, out Color color)
        {
            EObjectInteractabilityHint interactabilityHint = base.objectAsset.interactabilityHint;

            if (interactabilityHint != EObjectInteractabilityHint.USE)
            {
                message = EPlayerMessage.NONE;
            }
            else
            {
                message = EPlayerMessage.USE;
            }
            text  = string.Empty;
            color = Color.white;
            return(!PlayerUI.window.showCursor);
        }
예제 #17
0
        private static IEnumerator DisplayNotificationCoroutine(EPlayerMessage type, string message, Color color, float displayTime)
        {
            var started = Time.realtimeSinceStartup;

            while (true)
            {
                yield return(new WaitForEndOfFrame());

                if (!beingSpied)
                {
                    PlayerUI.hint(null, type, message, color);
                }

                if (Time.realtimeSinceStartup - started > displayTime)
                {
                    yield break;
                }
            }
        }
예제 #18
0
 public override bool checkHint(out EPlayerMessage message, out string text, out Color color)
 {
     if (this.checkUseable())
     {
         if (this.door.isOpen)
         {
             message = EPlayerMessage.DOOR_CLOSE;
         }
         else
         {
             message = EPlayerMessage.DOOR_OPEN;
         }
     }
     else
     {
         message = EPlayerMessage.LOCKED;
     }
     text  = string.Empty;
     color = Color.white;
     return(true);
 }
예제 #19
0
 // Token: 0x060020AF RID: 8367 RVA: 0x000B3518 File Offset: 0x000B1918
 public override bool checkHint(out EPlayerMessage message, out string text, out Color color)
 {
     text  = string.Empty;
     color = Color.white;
     if (this.checkUseable())
     {
         if (this.isClaimed)
         {
             message = EPlayerMessage.BED_OFF;
         }
         else
         {
             message = EPlayerMessage.BED_ON;
         }
     }
     else
     {
         message = EPlayerMessage.BED_CLAIMED;
     }
     return(true);
 }
예제 #20
0
 public static void DisplayNotification(EPlayerMessage type, string message, Color color, float displayTime) =>
 OptimizationVariables.MainPlayer.StartCoroutine(DisplayNotificationCoroutine(type, message, color, displayTime));
예제 #21
0
 // Token: 0x06002090 RID: 8336 RVA: 0x000B2F49 File Offset: 0x000B1349
 public virtual bool checkHint(out EPlayerMessage message, out float data)
 {
     message = EPlayerMessage.NONE;
     data    = 0f;
     return(false);
 }