Exemple #1
0
 protected override void Start()
 {
     _capsuleCollider = GetComponent <CapsuleCollider>();
     base.Start();
     type   = ObjectType.Player;
     Health = GetComponent <HealthProperty>();
     Hunger = GetComponent <HungerProperty>();
     Damage = GetComponent <DamageProperty>();
     Warm   = GetComponent <WarmProperty>();
     Energy = GetComponent <EnergyProperty>();
 }
 public void addEnergyProperty(EnergyProperty property)
 {
     if (property.EnergyType.getIndex() == 1 || property.EnergyType.getIndex() == 5)
     {
         Consumer = true;
     }
     else
     {
         Producer = true;
     }
     EnergyProperties.Add(property);
 }
 private void EnergyUpdated(EnergyProperty prop, SimObject simObject)
 {
     if (prop.Energy < 15)
     {
         UpdateSpeed(SlowSpeed, simObject);
         simObject.Color = Colors.Indigo;
     }
     else if (prop.Energy <= 0)
     {
         UpdateSpeed(0, simObject);
         simObject.Color = Colors.Black;
     }
     else
     {
         UpdateSpeed(Speed, simObject);
         simObject.Color = Colors.Red;
     }
 }
Exemple #4
0
            public BlockType initBlockType(IMyTerminalBlock block)
            {
                BlockType blockType = new BlockType();

                blockType.Typ = block.BlockDefinition.TypeIdString;
                String[] lines = block.DetailedInfo.Split('\n');
                for (int i = 0; i < lines.Length; i++)
                {
                    String line = lines[i];
                    if (line.StartsWith(TYPE_OUTPUT.getKey()))
                    {
                        EnergyProperty energyProperty = new EnergyProperty(TYPE_OUTPUT, i);
                        blockType.Producer = true;
                        blockType.addEnergyProperty(energyProperty);
                    }
                    else if (line.StartsWith(TYPE_INPUT.getKey()))
                    {
                        EnergyProperty energyProperty = new EnergyProperty(TYPE_INPUT, i);
                        blockType.Consumer = true;
                        blockType.addEnergyProperty(energyProperty);
                    }
                    else if (line.StartsWith(TYPE_STORED.getKey()))
                    {
                        EnergyProperty energyProperty = new EnergyProperty(TYPE_STORED, i);
                        blockType.addEnergyProperty(energyProperty);
                    }
                    else if (line.StartsWith(TYPE_MAX_STORED.getKey()))
                    {
                        EnergyProperty energyProperty = new EnergyProperty(TYPE_MAX_STORED, i);
                        blockType.addEnergyProperty(energyProperty);
                    }
                    else if (line.StartsWith(TYPE_MAX_OUTPUT.getKey()))
                    {
                        EnergyProperty energyProperty = new EnergyProperty(TYPE_MAX_OUTPUT, i);
                        blockType.addEnergyProperty(energyProperty);
                    }
                    else if (line.StartsWith(TYPE_REQUIRED_INPUT.getKey()))
                    {
                        EnergyProperty energyProperty = new EnergyProperty(TYPE_REQUIRED_INPUT, i);
                        blockType.addEnergyProperty(energyProperty);
                    }
                }
                return(blockType);
            }
Exemple #5
0
 private void EnergyUpdated(EnergyProperty prop, SimObject simObject)
 {
     if (prop.Energy < 1)
     {
         simObject.Velocity = new Vector2(0, 0);
         simObject.Color    = Colors.Red;
         _halt          = true;
         _canHuntNectar = false;
     }
     else if (prop.Energy < 15)
     {
         _canHuntNectar = false;
     }
     else
     {
         _halt          = false;
         _canHuntNectar = true;
     }
 }