Example #1
0
    void Start()
    {
        ballFactory = FindObjectOfType <BallFactory>();
        board       = FindObjectOfType <Board>();

        mainCamera = Camera.main;
    }
Example #2
0
        public void Create_sets_position()
        {
            var ballFactory = new BallFactory();
            var ball        = ballFactory.Create(new Point(16, 72));

            Assert.That(ball.Position, Is.EqualTo(new Point(16, 72)));
        }
Example #3
0
        public Animation()
        {
            InitializeComponent();
            Factory = new BallFactory();

            this.BackColor = Color.Green;
        }
Example #4
0
    void GenerateBallFactory()
    {
        GameObject obj = Instantiate(Pre_BallFactory, transform);

        m_BallFactory = obj.GetComponent <BallFactory>();
        m_BallFactory.InitBallFactory();
    }
Example #5
0
        public override void LoadContent()
        {
            _spriteBatch = Game.Services.GetService <SpriteBatch>();

            _paddleFactory = new PaddleFactory(Game.Services);
            _ballFactory   = new BallFactory(Game.Services);
        }
Example #6
0
        public void Awake()
        {
            var tileStyleRepository = new TileStyleRepository();
            var tileStyle           = tileStyleRepository.ObtainDefault();
            var tileFactory         = new TileFactory();
            var boardFactory        = new BoardFactory(tileFactory);

            var boardSettingsRepository = new BoardSettingsRepository();
            var boardSettings           = boardSettingsRepository.ObtainDefault();
            var board = boardFactory.Create(boardSettings, tileStyle);

            var boardMouseEventsNotifier = new MouseEventsNotifier(board);

            boardMouseEventsNotifier.Enable();

            var ballSelectionEventsNotifier = new BallSelectionEventsNotifier(boardMouseEventsNotifier);

            ballSelectionEventsNotifier.Enable();

            var pathfinder = new Pathfinder();
            var ballMoveControllerFactory = new BallMoveControllerFactory(pathfinder);
            var ballMoveController        = ballMoveControllerFactory.Create(ballSelectionEventsNotifier);

            ballMoveController.Enable();

            var ballBounceManager    = new BallBounceManager(board);
            var ballBounceController = new BallBounceController(ballSelectionEventsNotifier, ballBounceManager);

            ballBounceController.Enable();

            var ballMaterialSettingsRepository        = new BallMaterialSettingsRepository();
            var ballStyleRepository                   = new BallStyleRepositoryFactory(ballMaterialSettingsRepository).Create();
            var ballLifetimeManagerSettingsRepository = new BallLifetimeManagerSettingsRepository();
            var ballLifetimeManagerSettings           = ballLifetimeManagerSettingsRepository.ObtainDefault();
            var ballFactory             = new BallFactory();
            var random                  = new System.Random();
            var ballSpawnManagerFactory = new BallSpawnManagerFactory(
                ballLifetimeManagerSettings,
                ballStyleRepository,
                ballFactory,
                random
                );
            var ballColorPool = new BallColorPoolRepository().ObtainDefault();

            ballSpawnManager = ballSpawnManagerFactory.Create(board, ballColorPool);
            var ballPopManager         = new BallPopManager(board);
            var ballLifespanController = new BallLifespanController(ballSpawnManager, ballPopManager);

            ballLifespanController.Enable();

            var tileColorStyle = new TileColorStyle(
                TileColorStyleHelper.CreateVariantColorGroup(
                    tileStyle.ColorStyle.ForegroundColorGroup.IdleColor
                    ),
                tileStyle.ColorStyle.BorderColorGroup
                );
            var boardHighlightController = new BoardHighlightController(boardMouseEventsNotifier, tileColorStyle);

            boardHighlightController.Enable();
        }
Example #7
0
    private float ComputeInitialYVelocity(float posY)
    {
        //velY = sqrt((wantedHeight - initialPosY)*2*g)
        float targetHeight = BallFactory.GetPoppedBallTargetHeight(gameObject.tag);

        return((float)Math.Sqrt((targetHeight - posY) * 2 * acceleration));
    }
Example #8
0
    private void Start()
    {
        pathCreator    = FindObjectOfType <PathCreator>();
        ballFactory    = FindObjectOfType <BallFactory>();
        gameProperties = FindObjectOfType <GameProperties>();

        InitBallSlots();
    }
Example #9
0
 public void SetManager(BallFactory factory)
 {
     if (manager != null)
     {
         return;
     }
     manager = factory;
 }
Example #10
0
        private void AddBall()
        {
            Ball    ball           = new BallFactory().GetInstance();
            Vector2 viewportCenter = GetViewportRect().Size / 2;

            ball.Position = viewportCenter;
            CallDeferred("add_child", ball);
            ball.Connect("BallHitPaddle", this, nameof(OnBallHittingPaddle));
        }
Example #11
0
 public PongGame(RenderWindow rw)
 {
     this._score          = new Text("Score: 0 - 0", new Font(@"..\..\..\resources\Fonts\CaviarDreams.ttf"), 20);
     this._score.Position = new Vector2f(rw.GetView().Size.X / 2, rw.GetView().Size.Y / 10);
     this._player         = new Player(rw);
     this._enemy          = new Enemy(rw);
     this._ball           = BallFactory.CreateBall(rw, BallTypes.Normal);
     this._board          = BoardFactory.CreateBoard(rw, BoardTypes.Normal);
 }
Example #12
0
 public void PreLoad()
 {
     GameControl.遊戲進行中         = true;
     GameControl.Player1有球權    = true;
     GameControl.Player1_score = 0;
     GameControl.Player2_score = 0;
     GameControl.Ball_obj      = BallFactory.Create_ball(1);
     GameControl.Player1_obj   = PlayerFactory.Create_player1_obj(charactorNo1);
     GameControl.Player2_obj   = PlayerFactory.Create_player2_obj(charactorNo2);
 }
Example #13
0
    void Start()
    {
        blockFactory          = GameObject.Find("BlockFactory");
        blockFactoryComponent = blockFactory.GetComponent <BlockFactory>();

        ballFactory          = GameObject.Find("BallFactory");
        ballFactoryComponent = ballFactory.GetComponent <BallFactory>();

        blockFactoryComponent.MakeStage2();
    }
Example #14
0
 public BallSpawnManagerFactory(
     BallLifetimeManagerSettings ballLifetimeManagerSettings,
     BallStyleRepository ballStyleRepository,
     BallFactory ballFactory,
     Random random
     )
 {
     this.ballLifetimeManagerSettings = ballLifetimeManagerSettings;
     this.ballStyleRepository         = ballStyleRepository;
     this.ballFactory = ballFactory;
     this.random      = random;
 }
Example #15
0
    private void OnTriggerEnter(Collider other)
    {
        if (other.tag.StartsWith("ball"))
        {
            Rigidbody ballRB = other.gameObject.GetComponent <Rigidbody>();
            if (ballRB.velocity.y < 0 | System.Math.Abs(ballRB.velocity.y) < EPSILON)
            {
                ballRB.velocity = new Vector3(ballRB.velocity.x, BallFactory.GetSpeedYFromGround(other.tag), ballRB.velocity.z);
            }

            //Debug.Log("z velocity new wall: " + ballRB.velocity.z);
        }
    }
Example #16
0
    private void OnCollisionEnter2D(Collision2D col)
    {
        //ぶつかったボールが既に鳴ってたらやらない
        if (col.gameObject.tag == "Ball" && col.gameObject.GetComponent <Ball>().isRinging)
        {
            return;
        }
        else
        {
            //ボールの二つ分音がならないためにやってる
            isRinging = true;
            audioSource.Play();
        }

        //プレイヤー以外のぶつかりは無視
        if (col.gameObject.tag != "Player")
        {
            return;
        }

        //OnCollisionEnter2Dの順番よくわからんからこれで色保持してる
        prevBallState = ballState;
        //ボールの色によって運命が決まる
        switch (ballState)
        {
        case BALL_STATE.GREEN:
            Score.ScoreAdder();
            //GameObject newBall = Instantiate(ball);
            Ball newBall = BallFactory.GetInstance();     // by tada
            if (newBall != null)
            {
                newBall.transform.position = this.transform.position;
                newBall.GetComponent <Rigidbody2D>().velocity =
                    Quaternion.Euler(0, 0, Random.Range(-30f, 30f)) * rigidbody2d.velocity.normalized * 10f;
                newBall.PlayEffect();
            }
            StateAndColorSetter(BALL_STATE.BLUE);
            // 2つの玉からエフェクトを出す
            PlayEffect();
            break;

        case BALL_STATE.RED:

            // 死亡エフェクトを出す
            EffectFactory.Play(eEffectType.Burst, transform.position, (int)BALL_STATE.RED);
            Score.GameOver();
            // ボールを消す
            gameObject.SetActive(false);
            break;
        }
    }
Example #17
0
        void CustomInitialize()
        {
            FlatRedBallServices.GraphicsOptions.TextureFilter = Microsoft.Xna.Framework.Graphics.TextureFilter.Point;

            BasicArena.AddToManagers();
            stage = new Stage(BasicArena);



            var ball = BallFactory.CreateNew();

            ball.X = 400;
            ball.Y = -100;

            PlatformerCharacterBaseList = new List <PlatformerCharacterBase>();

            TileEntityInstantiator.CreateEntitiesFrom(BasicArena);

            PlatformerCharacterBaseList.AddRange(PlatformInteracterList.OfType <PlatformerCharacterBase>());
        }
Example #18
0
        public void initFactory()
        {
            //初始化工厂

            //f1 生产随机位置和随机方向的鱼,吃掉后加分
            f1 = new BallFactory(Resourse.getInstance().baseBallTexture, Color.White, "", "RandomRoad");

            //f2 生产幕布式的鱼,吃掉后加分
            f2 = new BallFactory(Resourse.getInstance().baseBallTexture, Color.White, "", "LinerRoad");

            //f3 生产冲锋式的鱼,会向玩家冲去,吃掉后加分
            f3 = new BallFactory(Resourse.getInstance().baseBallTexture, Color.White, "", "Rush");

            //f4 生产随机位置和随机方向的鱼,吃掉后减分
            f4 = new BallFactory(Resourse.getInstance().baseBallTexture, Color.White, "SubImpact", "RandomRoad");

            //f5 生产幕布式的鱼,吃掉后减分
            f5 = new BallFactory(Resourse.getInstance().baseBallTexture, Color.White, "SubImpact", "LinerRoad");

            //f6  生产冲锋式的鱼,会向玩家冲去,吃掉后减分
            f6 = new BallFactory(Resourse.getInstance().baseBallTexture, Color.White, "SubImpact", "Rush");
        }
Example #19
0
    private void SetGameInternal(GameType type, bool hasEnvironment)
    {
        var TextureContainer = new TextureContainer ();
        var BallFactory = new BallFactory (TextureContainer);
        var BallManager = new BallManager (BallFactory);
        var GameCore = new GameCore (BallManager);
        var EventFactory = new EventFactory (GameCore);
        var GameController = MakeController (type, GameCore, EventFactory);
        var Environment = new Environment (GameController, EventFactory);

        _container = new GameContainer (GameCore, GameController, Environment, hasEnvironment);
        HasErrors = false;
        Initialized = true;
    }
Example #20
0
 public void Create_sets_position()
 {
     var ballFactory = new BallFactory();
     var ball = ballFactory.Create(new Point(16, 72));
     Assert.That(ball.Position, Is.EqualTo(new Point(16, 72)));
 }
Example #21
0
 public BallManager(BallFactory ballFactory)
 {
     _ballFactory = ballFactory;
 }
Example #22
0
    private void Awake()
    {
        if (Instance != null)
        {
            Debug.LogError("There is multiple instance of singleton BallFactory");
            return;
        }

        Instance = this;

        foreach (object value in System.Enum.GetValues(typeof(BallType)))
        {
            this.availableBallsByType.Add((BallType)value, new Queue<Ball>());
        }
    }
Example #23
0
 void Start()
 {
     ballFactory          = GameObject.Find("BallFactory");
     ballFactoryComponent = ballFactory.GetComponent <BallFactory>();
 }
Example #24
0
 public BallSpawner(GameParams gameParams, BallFactory factory)
 {
     _gameParams = gameParams;
     _factory    = factory;
 }
Example #25
0
        public BallFactory_MakeBallShould()
        {
            var t = new Mock <ITextUtils>();

            _factory = new BallFactory(new RandomNumberGenerator(), t.Object);
        }