VobInst CreateBarrier(HordeScenario.Barrier bar) { VobInst vob = new VobInst(VobDef.Get(bar.Definition)); vob.Spawn(World, bar.Position, bar.Angles); return(vob); }
public WorldObjects.Instances.BaseVobInstance CreateInstance(byte type) { BaseVobDef def; switch ((VobType)type) { case VobType.Vob: def = new VobDef(); break; case VobType.Mob: def = new MobDef(); break; case VobType.NPC: def = new NPCDef(); break; case VobType.Item: def = new ItemDef(); break; case VobType.Projectile: def = new ProjDef(); break; default: throw new Exception("Unsupported VobType: " + (VobType)type); } return(def.BaseDef); }
static VobInst CreateBarrier(HordeBarrier bar) { VobInst vob = new VobInst(VobDef.Get(bar.Definition)); vob.Spawn(activeWorld, bar.Position, bar.Angles); return(vob); }
protected bool TryGenerateVobDef(Dictionary <int, VobDef> vobDefByID, IDAndEffectIDs idAndEffectIDs, Dictionary <int, Effect> effectByID) { Effect effect; List <Effect> effects = new List <Effect>(); foreach (var effectID in idAndEffectIDs.EffectIDs) { if (effectByID.TryGetValue(effectID, out effect)) { if (ContainsUnresolvedDependencies(effect)) { return(false); } effects.Add(effect); } } VobType vobType; if (!TryFindVobDefType(effectByID, idAndEffectIDs.EffectIDs, out vobType)) { MakeLogError("Couldn't find VobDefType for VobDef of id: " + idAndEffectIDs.ID); } VobDef vobDef = null; switch (vobType) { case VobType.Vob: vobDef = new VobDef(); break; case VobType.Item: vobDef = new ItemDef(); break; case VobType.NPC: vobDef = new NPCDef(); break; default: MakeLogError("The VobType " + vobType + " is not supported by the loading process!"); return(false); } // get the effectHander and hand all effects to it vobDef.EffectHandler.AddEffects(effects, true); return(true); }
public VobDefEffectHandler(string objName, List <Effect> effects, VobDef host) : base(objName, effects, host) { }
public VobDefEffectHandler(List <Effect> effects, VobDef host) : this("VobDefEffectHandler", effects, host) { }
public VobInst(VobDef def) : this() { this.Definition = def; }
public void BuildDefinition() { ModelDef m = new ModelDef("trollpalisade"); m.Visual = "OW_TROLLPALISSADE.3DS"; m.Create(); VobDef vobDef = new VobDef("trollpalisade", _BaseDefFactory, _Registration); vobDef.Model = m; vobDef.CDDyn = vobDef.CDStatic = true; vobDef.Create(); m = new ModelDef("invwall"); m.Visual = "TRANS_WAND.3DS"; m.Create(); vobDef = new VobDef("invwall", _BaseDefFactory, _Registration); vobDef.Model = m; vobDef.CDDyn = vobDef.CDStatic = true; vobDef.Create(); m = new ModelDef("irdorathwall"); m.Visual = "NW_DRAGONISLE_INVISIBLEORCWALL_01.3DS"; m.Create(); vobDef = new VobDef("irdorathwall", _BaseDefFactory, _Registration); vobDef.Model = m; vobDef.CDDyn = vobDef.CDStatic = true; vobDef.Create(); m = new ModelDef("gate"); m.Visual = "OC_LOB_GATE_BIG.3DS"; m.Create(); vobDef = new VobDef("gate", _BaseDefFactory, _Registration); vobDef.Model = m; vobDef.CDDyn = vobDef.CDStatic = true; vobDef.Create(); m = new ModelDef("bridge"); m.Visual = "NW_DRAGONISLE_BIGBRIDGE_01.3DS"; m.Create(); vobDef = new VobDef("bridge", _BaseDefFactory, _Registration); vobDef.Model = m; vobDef.CDDyn = vobDef.CDStatic = true; vobDef.Create(); m = new ModelDef("door"); m.Visual = "DOOR_NW_DRAGONISLE_02.MDS"; m.Create(); vobDef = new VobDef("door", _BaseDefFactory, _Registration); vobDef.Model = m; vobDef.CDDyn = vobDef.CDStatic = true; vobDef.Create(); m = new ModelDef("door_puzzle_left"); m.Visual = "EVT_MAINHALL_DOOR_LEFT_01.3DS"; m.Create(); vobDef = new VobDef("door_puzzle_left", _BaseDefFactory, _Registration); vobDef.Model = m; vobDef.CDDyn = vobDef.CDStatic = true; vobDef.Create(); m = new ModelDef("door_puzzle_right"); m.Visual = "EVT_MAINHALL_DOOR_RIGHT_01.3DS"; m.Create(); vobDef = new VobDef("door_puzzle_right", _BaseDefFactory, _Registration); vobDef.Model = m; vobDef.CDDyn = vobDef.CDStatic = true; vobDef.Create(); m = new ModelDef("redeye"); m.Visual = "THEREDEYE.pfx"; m.Create(); vobDef = new VobDef("redeye", _BaseDefFactory, _Registration); vobDef.Model = m; vobDef.CDDyn = vobDef.CDStatic = false; vobDef.Create(); m = new ModelDef("bigdoor_head_right"); m.Visual = "NW_DRAGONISLE_BIGDOOR_HEAD_RIGHT_01.3DS"; m.Create(); vobDef = new VobDef("bigdoor_head_right", _BaseDefFactory, _Registration); vobDef.Model = m; vobDef.CDDyn = vobDef.CDStatic = true; vobDef.Create(); m = new ModelDef("bigdoor_head_left"); m.Visual = "NW_DRAGONISLE_BIGDOOR_HEAD_LEFT_01.3DS"; m.Create(); vobDef = new VobDef("bigdoor_head_left", _BaseDefFactory, _Registration); vobDef.Model = m; vobDef.CDDyn = vobDef.CDStatic = true; vobDef.Create(); m = new ModelDef("bigdoor_right"); m.Visual = "NW_DRAGONISLE_BIGDOOR_RIGHT_01.3DS"; m.Create(); vobDef = new VobDef("bigdoor_right", _BaseDefFactory, _Registration); vobDef.Model = m; vobDef.CDDyn = vobDef.CDStatic = true; vobDef.Create(); m = new ModelDef("bigdoor_left"); m.Visual = "NW_DRAGONISLE_BIGDOOR_LEFT_01.3DS"; m.Create(); vobDef = new VobDef("bigdoor_left", _BaseDefFactory, _Registration); vobDef.Model = m; vobDef.CDDyn = vobDef.CDStatic = true; vobDef.Create(); }
public VobInst(VobDef def) : base(def) { }