示例#1
0
    public override void SetUpZone(float duration, float size, object specialParameter)
    {
        base.SetUpZone(duration, size, specialParameter);

        transform.localScale = Vector3.zero;
        //transform.localScale = new Vector3(size, size, size);
        currentlyAffectedShips = new List <Ship>();

        if ((specialParameter as SlowingZoneParameters) != null)
        {
            currentSlowingZoneParameters = specialParameter as SlowingZoneParameters;
        }

        Vector3 truePosition = transform.position;

        truePosition.y     = GameManager.gameManager.GetSeaLevel;
        transform.position = truePosition;

        slowingZonePS.Play();

        zoneSize = size;

        transform.rotation = Quaternion.Euler(new Vector3(0, Random.Range(-180f, 180f), 0));

        if (zoneAudioSource != null)
        {
            zoneAudioSource.PlaySound(zoneApparitionSound);
        }
    }
示例#2
0
 public ProjectileSpecialParameters(ShipSpeedModifier speedModifier, ProjectilePiercingParameters piercingParameters, ProjectileSkeweringParameters skeweringParameters, ExplosionParameters explParameters, SmokeZoneParameters smokeZoneParams, SlowingZoneParameters slowingZoneParams)
 {
     shipSpeedModifier             = speedModifier;
     projectilePiercingParameters  = piercingParameters;
     projectileSkeweringParameters = skeweringParameters;
     explosionParameters           = explParameters;
     smokeZoneParameters           = smokeZoneParams;
     slowingZoneParameters         = slowingZoneParams;
 }
示例#3
0
 public SlowingZoneParameters(SlowingZoneParameters parameters)
 {
     zoneDuration      = parameters.zoneDuration;
     zoneSize          = parameters.zoneSize;
     shipSpeedModifier = new ShipSpeedModifier(parameters.GetShipSpeedModifier);
 }