Beispiel #1
0
 internal void Execute(FXListExecutionContext context)
 {
     foreach (var nugget in Nuggets)
     {
         nugget.Execute(context);
     }
 }
Beispiel #2
0
        internal override void Execute(FXListExecutionContext context)
        {
            var gameData = context.GameContext.AssetLoadContext.AssetStore.GameData.Current;

            var intensity = Math.Min(GetShakeIntensity(gameData), gameData.MaxShakeIntensity);

            // TODO: What is MaxShakeRange - is it the maximum distance a unit can be
            // offscreen while still causing the camera to shake?

            // TODO: Implement this.
        }
Beispiel #3
0
        internal override void Execute(FXListExecutionContext context)
        {
            var worldMatrix = OrientToObject
                ? Matrix4x4.CreateFromQuaternion(context.Rotation)
                : Matrix4x4.Identity;

            var position = context.Position;

            if (CreateAtGroundHeight)
            {
                position.Z = context.GameContext.Terrain.HeightMap.GetHeight(position.X, position.Y);
            }

            worldMatrix.Translation = position;

            context.GameContext.ParticleSystems.Create(
                Template.Value,
                worldMatrix);
        }
Beispiel #4
0
 internal override void Execute(FXListExecutionContext context)
 {
     // TODO: Add dynamic point light with specified colour and radius to scene,
     // set to expire after IncreaseTime + DecreaseTime.
 }
Beispiel #5
0
 internal override void Execute(FXListExecutionContext context)
 {
     context.GameContext.AudioSystem.PlayAudioEvent(Value?.Value);
 }
Beispiel #6
0
 internal virtual void Execute(FXListExecutionContext context)
 {
 }                                                                 // TODO: This should be abstract.