示例#1
0
    static void ClearLevel()
    {
        Bookkeeper.Clear();

        _asteroidSpawner.Dispose();
        _timer.Dispose();
    }
示例#2
0
    public static AsteroidFactory SpawnAsteroid()
    {
        // Calc
        Vector2 expandOffset = Vector2.up * Boundaries.Rect.height * Refs.Instance.Settings.AsteroidSpawnAreaExpand * .5f;
        Vector2 position     =
            Vector2.Lerp(
                Boundaries.x1y0 - expandOffset,
                Boundaries.Max + expandOffset,
                Random.value
                ) +
            Vector2.right * Refs.Instance.Settings.AsteroidSpawnRightShift
        ;
        Vector2 baseVelocity  = Vector2.left * Refs.Instance.Settings.AsteroidBaseSpeed;
        Vector2 addonVelocity = Random.insideUnitCircle * Refs.Instance.Settings.AsteroidAddonSpeed;
        Vector2 velocity      = baseVelocity + addonVelocity;


        // Create
        AsteroidFactory factory = new AsteroidFactory(position);

        // Launch
        factory.Model.Launch(velocity);

        // Bookkeeping
        Bookkeeper.Register(factory.Controller);

        return(factory);
    }
示例#3
0
    public static ShipFactory SpawnShip()
    {
        // Create
        ShipFactory factory = new ShipFactory(Settings.ShipSpeed);

        // Bookkeeping
        Bookkeeper.Register(factory.Controller);

        return(factory);
    }
示例#4
0
        void Caller()
        {
            Employee emp1 = new Bookkeeper();
            Employee emp2 = new Manager();

            emp1.Successor = emp2;


            BaseDocument doc = new DocumentA();

            emp1.ProcessDocument(doc);
        }
示例#5
0
    public static BulletFactory SpawnBullet(Vector2 position)
    {
        // Create
        BulletFactory factory = new BulletFactory(position);

        // Set velocity
        factory.Model.Fire(Vector2.right * Settings.BulletsSpeed);

        // Bookkeeping
        Bookkeeper.Register(factory.Controller);

        return(factory);
    }
示例#6
0
 public PatternsViewModel(INavigationService navigationService, Bookkeeper bookkeeper)
     : base(navigationService)
 {
     _bookkeeper = bookkeeper;
 }