Пример #1
0
        public PlayingHud(Alex game, Player player, TitleComponent titleComponent) : base()
        {
            Title = titleComponent;

            Alex   = game;
            Player = player;

            Player.OnInventoryChanged += OnInventoryChanged;

            Anchor  = Alignment.Fill;
            Padding = Thickness.One;

            _playerController = player.Controller;
            InputManager.AddListener(new MouseInputListener(InputManager.PlayerIndex));

            _healthAndHotbar = new GuiStackContainer()
            {
                Orientation = Orientation.Vertical,
                ChildAnchor = Alignment.Fill
            };

            _bottomContainer              = new GuiMultiStackContainer();
            _bottomContainer.ChildAnchor  = Alignment.BottomFill;
            _bottomContainer.Anchor       = Alignment.BottomCenter;
            _bottomContainer.AutoSizeMode = AutoSizeMode.GrowAndShrink;
            _bottomContainer.Orientation  = Orientation.Vertical;

            //BottomContainer.

            _hotbar         = new GuiItemHotbar(player.Inventory);
            _hotbar.Anchor  = Alignment.BottomCenter;
            _hotbar.Padding = Thickness.Zero;

            Chat         = new ChatComponent();
            Chat.Enabled = false;
            Chat.Anchor  = Alignment.BottomLeft;

            _healthContainer        = new GuiContainer();
            _healthContainer.Anchor = Alignment.Fill;

            _healthContainer.Margin = new Thickness(0, 0, 0, 1);

            _healthComponent        = new HealthComponent(player);
            _healthComponent.Anchor = Alignment.TopLeft;

            _hungerComponent        = new HungerComponent(player);
            _hungerComponent.Anchor = Alignment.TopRight;

            _tipPopupComponent              = new TipPopupComponent();
            _tipPopupComponent.Anchor       = Alignment.BottomCenter;
            _tipPopupComponent.AutoSizeMode = AutoSizeMode.GrowAndShrink;

            Scoreboard        = new ScoreboardView();
            Scoreboard.Anchor = Alignment.MiddleRight;
        }
Пример #2
0
    public void Start()
    {
        HealthComponent playerHealthComponent = PlayerNetwork.LocalPlayer?.GetComponent <HealthComponent>();

        UpdateHealthSlider(playerHealthComponent.Value);
        playerHealthComponent.OnValueChangedCallback += UpdateHealthSlider;

        HungerComponent playerHungerComponent = PlayerNetwork.LocalPlayer?.GetComponent <HungerComponent>();

        UpdateHungerSlider(playerHungerComponent.Value);
        playerHungerComponent.OnValueChangedCallback += UpdateHungerSlider;

        ExitGames.Client.Photon.Hashtable playerHealthAndHunger = new ExitGames.Client.Photon.Hashtable()
        {
            { "Health", playerHealthComponent.Value }, { "Hunger", playerHungerComponent.Value }
        };
        PhotonNetwork.SetPlayerCustomProperties(playerHealthAndHunger);
    }
Пример #3
0
 protected virtual void InitializeHungerComponent()
 {
     HungerComponent = new HungerComponent(this);
     Components.Add(HungerComponent);
 }
 public HungerStatusEffect(ScriptableStatusEffectData statusEffect, StatusEffectComponent statusEffectComponent) : base(statusEffect, statusEffectComponent)
 {
     hungerComponent        = statusEffectComponent.GetComponent <HungerComponent>();
     hungerStatusEffectData = (HungerStatusEffectData)statusEffect;
 }
Пример #5
0
 public override void Awake(StateMachine stateMachine)
 {
     _hungerComponent = stateMachine.GetComponent <HungerComponent>();
 }
Пример #6
0
 public EatCommand(HungerComponent hungerComponent, IEdible food)
 {
     _hungerComponent = hungerComponent;
     _food            = food;
     (_food as IDestroyable).OnDestroyed += OnFoodDestroyed;
 }