public static Create ( |
||
info | ||
inGamePlay | bool | |
return |
public override void LoadXml(XElement node) { foreach (XElement weapon in node.Elements("Weapon")) { string name = weapon.RequireAttribute("name").Value; string entity = weapon.RequireAttribute("entity").Value; int ammo = weapon.TryAttribute <int>("ammo", -1); int usage = weapon.TryAttribute <int>("usage", 1); int?palette = weapon.TryAttribute <int?>("palette"); HealthMeter meter = null; XElement meterNode = weapon.Element("Meter"); if (meterNode != null) { var meterInfo = HandlerXmlReader.LoadMeter(meterNode, Game.CurrentGame.BasePath); meter = HealthMeter.Create(meterInfo, true); meter.MaxValue = ammo; meter.Reset(); } AddWeapon(name, entity, ammo, usage, meter, palette); } }
public override void LoadXml(XElement node) { XElement maxNode = node.Element("Max"); if (maxNode != null) { maxHealth = maxNode.GetValue <float>(); } StartHealth = node.TryAttribute <float>("startValue", MaxHealth); XElement meterNode = node.Element("Meter"); if (meterNode != null) { var meterInfo = HandlerXmlReader.LoadMeter(meterNode, Game.CurrentGame.BasePath); meter = HealthMeter.Create(meterInfo, true); meter.MaxValue = maxHealth; meter.IsPlayer = (Parent.Name == "Player"); } XElement flashNode = node.Element("Flash"); if (flashNode != null) { flashtime = flashNode.TryValue <int>(); } }
public void LoadInfo(HealthComponentInfo info) { maxHealth = info.Max; StartHealth = info.StartValue ?? info.Max; flashtime = info.FlashFrames; if (info.Meter != null) { meter = HealthMeter.Create(info.Meter, true); meter.MaxValue = maxHealth; meter.IsPlayer = (Parent.Name == "Player"); } }
public void LoadInfo(WeaponComponentInfo info) { foreach (var weapon in info.Weapons) { HealthMeter meter = null; if (weapon.Meter != null) { meter = HealthMeter.Create(weapon.Meter, true); } AddWeapon(weapon.Name, weapon.EntityName, weapon.Ammo ?? -1, weapon.Usage ?? 1, meter, weapon.Palette); } }
private void AddCommand(SceneAddCommandInfo command) { var obj = Info.Objects[command.Object]; IHandlerObject handler = null; if (obj is HandlerSpriteInfo) { handler = new HandlerSprite(((HandlerSpriteInfo)obj).Sprite, new Point(command.X, command.Y)); } else if (obj is MeterInfo) { handler = new HandlerMeter(HealthMeter.Create((MeterInfo)obj, false), this); } handler.Start(); var name = command.Name ?? Guid.NewGuid().ToString(); if (!objects.ContainsKey(name)) { objects.Add(name, handler); } }