public override void Load(ValuesDictionary valuesDictionary, IdToEntityMap idToEntityMap) { base.Load(valuesDictionary, idToEntityMap); m_subsystemTime = base.Project.FindSubsystem <SubsystemTime>(throwOnError: true); m_subsystemTerrain = base.Project.FindSubsystem <SubsystemTerrain>(throwOnError: true); m_subsystemBodies = base.Project.FindSubsystem <SubsystemBodies>(throwOnError: true); m_subsystemMovingBlocks = base.Project.FindSubsystem <SubsystemMovingBlocks>(throwOnError: true); m_subsystemAudio = base.Project.FindSubsystem <SubsystemAudio>(throwOnError: true); m_subsystemParticles = base.Project.FindSubsystem <SubsystemParticles>(throwOnError: true); m_subsystemBlockBehaviors = base.Project.FindSubsystem <SubsystemBlockBehaviors>(throwOnError: true); m_subsystemFluidBlockBehavior = base.Project.FindSubsystem <SubsystemFluidBlockBehavior>(throwOnError: true); BoxSize = valuesDictionary.GetValue <Vector3>("BoxSize"); Mass = valuesDictionary.GetValue <float>("Mass"); Density = valuesDictionary.GetValue <float>("Density"); AirDrag = valuesDictionary.GetValue <Vector2>("AirDrag"); WaterDrag = valuesDictionary.GetValue <Vector2>("WaterDrag"); WaterSwayAngle = valuesDictionary.GetValue <float>("WaterSwayAngle"); WaterTurnSpeed = valuesDictionary.GetValue <float>("WaterTurnSpeed"); Velocity = valuesDictionary.GetValue <Vector3>("Velocity"); MaxSmoothRiseHeight = valuesDictionary.GetValue <float>("MaxSmoothRiseHeight"); ParentBody = valuesDictionary.GetValue <EntityReference>("ParentBody").GetComponent <ComponentBody>(base.Entity, idToEntityMap, throwIfNotFound: false); ParentBodyPositionOffset = valuesDictionary.GetValue <Vector3>("ParentBodyPositionOffset"); ParentBodyRotationOffset = valuesDictionary.GetValue <Quaternion>("ParentBodyRotationOffset"); IsSmoothRiseEnabled = true; IsGravityEnabled = true; IsGroundDragEnabled = true; IsWaterDragEnabled = true; }
public override void Load(ValuesDictionary valuesDictionary) { base.Load(valuesDictionary); m_subsystemGameInfo = base.Project.FindSubsystem <SubsystemGameInfo>(throwOnError: true); m_subsystemSoundMaterials = base.Project.FindSubsystem <SubsystemSoundMaterials>(throwOnError: true); m_subsystemMovingBlocks = base.Project.FindSubsystem <SubsystemMovingBlocks>(throwOnError: true); m_subsystemMovingBlocks.Stopped += MovingBlocksStopped; m_subsystemMovingBlocks.CollidedWithTerrain += MovingBlocksCollidedWithTerrain; }
public override void Load(ValuesDictionary valuesDictionary) { base.Load(valuesDictionary); m_subsystemTime = base.Project.FindSubsystem <SubsystemTime>(throwOnError: true); m_subsystemTerrain = base.Project.FindSubsystem <SubsystemTerrain>(throwOnError: true); m_subsystemAudio = base.Project.FindSubsystem <SubsystemAudio>(throwOnError: true); m_subsystemMovingBlocks = base.Project.FindSubsystem <SubsystemMovingBlocks>(throwOnError: true); m_subsystemMovingBlocks.Stopped += MovingBlocksStopped; m_subsystemMovingBlocks.CollidedWithTerrain += MovingBlocksCollidedWithTerrain; }
public static void Load(Project Project) { if (LoadedProject) { return; } SubsystemGameInfo = Project.FindSubsystem <SubsystemGameInfo>(true); SubsystemAudio = Project.FindSubsystem <SubsystemAudio>(true); SubsystemBodies = Project.FindSubsystem <SubsystemBodies>(true); SubsystemTime = Project.FindSubsystem <SubsystemTime>(true); SubsystemItemsScanner = Project.FindSubsystem <SubsystemItemsScanner>(true); SubsystemMovingBlocks = Project.FindSubsystem <SubsystemMovingBlocks>(true); SubsystemBlockEntities = Project.FindSubsystem <SubsystemBlockEntities>(true); SubsystemExplosions = Project.FindSubsystem <SubsystemExplosions>(true); SubsystemCollapsingBlockBehavior = Project.FindSubsystem <SubsystemCollapsingBlockBehavior>(true); SubsystemPickables = Project.FindSubsystem <SubsystemPickables>(true); SubsystemProjectiles = Project.FindSubsystem <SubsystemProjectiles>(true); Terrain = (SubsystemTerrain = Project.FindSubsystem <SubsystemTerrain>(true)).Terrain; LoadedProject = true; }
public override void Load(ValuesDictionary valuesDictionary, IdToEntityMap idToEntityMap) { m_subsystemTerrain = base.Project.FindSubsystem <SubsystemTerrain>(throwOnError: true); m_subsystemBodies = base.Project.FindSubsystem <SubsystemBodies>(throwOnError: true); m_subsystemMovingBlocks = base.Project.FindSubsystem <SubsystemMovingBlocks>(throwOnError: true); m_subsystemGameInfo = base.Project.FindSubsystem <SubsystemGameInfo>(throwOnError: true); m_subsystemTime = base.Project.FindSubsystem <SubsystemTime>(throwOnError: true); m_subsystemAudio = base.Project.FindSubsystem <SubsystemAudio>(throwOnError: true); m_subsystemSoundMaterials = base.Project.FindSubsystem <SubsystemSoundMaterials>(throwOnError: true); m_subsystemBlockBehaviors = base.Project.FindSubsystem <SubsystemBlockBehaviors>(throwOnError: true); ComponentCreature = base.Entity.FindComponent <ComponentCreature>(throwOnError: true); ComponentPlayer = base.Entity.FindComponent <ComponentPlayer>(); if (m_subsystemGameInfo.WorldSettings.GameMode == GameMode.Creative && ComponentPlayer != null) { Inventory = base.Entity.FindComponent <ComponentCreativeInventory>(); } else { Inventory = base.Entity.FindComponent <ComponentInventory>(); } AttackPower = valuesDictionary.GetValue <float>("AttackPower"); }