Ejemplo n.º 1
0
    void Update()
    {
        if (!IsReadyToFire)
        {
            return;
        }

        if (Input.GetKey(KeyCode.Space))
        {
            BulletView bullet = _bulletPool.Spawn(_bulletSettings);

            bullet.Position = transform.position;
            bullet.Rotation = transform.rotation;
            LastShootTime   = Time.realtimeSinceStartup;
        }
    }
Ejemplo n.º 2
0
    public void shoot()
    {
        GameObject obj = TrashMan.spawn("Bullet");

        obj.tag = ObjectType.EnemyBullet;
        BulletView bulletView = obj.GetComponent <BulletView>();

        obj.transform.parent   = shooter.transform.parent;
        obj.transform.position = shooter.transform.position;
        BulletLeftRunner bulletLeftRunner = new BulletLeftRunner();
        Rectangle        body             = new Rectangle(shooterPos.origin.x, shooterPos.origin.y, 20, 20);

        NetScene.getInstance().collisionTree.Insert(body);
        bulletView.SetRunner(body);
        bulletView.valid = true;
    }
Ejemplo n.º 3
0
        public override ActionResult Delete(int?id)
        {
            var entityViewModel = new BulletViewModel();

            using (var localService = this.service as IBulletService)
            {
                var entity     = localService.FindById(id) as Bullet;
                var entityView = new BulletView {
                    Id = entity.Id, Name = entity.Name, BulletTypeAbbreviation = entity.BulletType.Abbreviation, MaterialId = entity.MaterialId, MaterialName = entity.Material.Name, Diameter = entity.Diameter, DiameterUnitId = entity.DiameterUnitId, Mass = entity.Mass, MassUnitId = entity.MassUnitId, SectionalDensity = entity.SectionalDensity, BallisticCoefficient = entity.BallisticCoefficient, Length = entity.Length, LengthUnitId = entity.LengthUnitId, ManufacturerId = entity.ManufacturerId, ManufacturerName = entity.Manufacturer.Name, Notes = entity.Notes
                };

                entityViewModel.CanDelete  = !(entity.CartridgeLoads.Any() || entity.BulletQuantities.Any() || entity.BulletCosts.Any());
                entityViewModel.Entity     = entity;
                entityViewModel.EntityView = entityView;
            }

            return(View(entityViewModel));
        }
Ejemplo n.º 4
0
        public BulletView Create(string bulletName, long objId)
        {
            var data      = cfgMgr.GetBulletData(bulletName);
            var bulletObj = objMgr.Get(PoolNames.BULLET);

            if (bulletObj != null)
            {
                bulletObj.transform.SetParent(io.battleObject);
                bulletObj.transform.SetLayer(AppConst.GameplayLayer);

                var bullet = new BulletView();
                bullet.Initialize(data, objId);

                bulletObj.AddComponent <ViewObject>().BindView(bullet);

                mBullets.Add(objId, bullet);
                return(bullet);
            }
            return(null);
        }
Ejemplo n.º 5
0
 void Start()
 {
     bModel      = new BulletModel(startPosition);
     bView       = CreateBulletView(startPosition);
     disposables = new CompositeDisposable();
     Observable.EveryUpdate()
     .Subscribe(_ =>
     {
         bModel.UpdatePosition(1 * Time.deltaTime);
     })
     .AddTo(disposables);
     bModel.position
     .ObserveEveryValueChanged(position => position.Value)
     .Subscribe(posValue =>
     {
         bView.UpdatePosition(posValue);
     })
     .AddTo(disposables);
     bView.isCollided
     .ObserveEveryValueChanged(position => position.Value)
     .Subscribe(posValue =>
     {
         bModel.SendDeathNotice();
     })
     .AddTo(disposables);
     MessageBroker.Default
     .Receive <DeathNotice>()
     .Where(msg => msg.sender == bModel && msg.objectType == SpaceObjectType.bullet)
     .Subscribe(_ => {
         SelfDestruct();
     })
     .AddTo(disposables);
     MessageBroker.Default
     .Receive <GameOverNotice>()
     .Subscribe(msg =>
     {
         disposables.Dispose();
     })
     .AddTo(this);
 }
        private BulletView GetBullet(BulletsList inBulletLabel)
        {
            var bulletData = _config.bulletsData?.FirstOrDefault(b => b.label == inBulletLabel);

            if (bulletData == null)
            {
                throw new NullReferenceException($"bullet data {inBulletLabel} not found!");
            }

            var bullet = SystemFacade.Pool.GetConcreteGameView <BulletView>();

            if (bullet != null)
            {
                bullet.Visibility = false;
                return(bullet);
            }

            //- create new bullet
            bullet = new BulletView(application, "Bullet", LayerNames.Vfx, bulletData)
            {
                Visibility = false
            };
            return(bullet);
        }
        private void BulletViewOnOnCollide(BulletView bulletView, Collider other)
        {
            if (bulletView.CompareTag("Bullet") && other.CompareTag("EnemyBullet"))
            {
                return;
            }

            if (bulletView.CompareTag("EnemyBullet") && other.CompareTag("Bullet"))
            {
                return;
            }

            if (bulletView.CompareTag("EnemyBullet") && other.CompareTag("Player"))
            {
                signalBus.Fire(new PlayerHitSignal());
                RemoveBullet(bulletView);
            }

            if (bulletView.CompareTag("Bullet") && other.CompareTag("Enemy"))
            {
                signalBus.Fire(new EnemyHitSignal(other.GetComponent <EnemyView>().EnemyData));
                RemoveBullet(bulletView);
            }
        }
Ejemplo n.º 8
0
 public Bullet(BulletView view)
 {
     _view = view;
     Active(false);
 }
Ejemplo n.º 9
0
    public BulletController(BulletModel Model, BulletView prefab)
    {
        bulletModel = Model;

        bulletView = GameObject.Instantiate <BulletView>(prefab);
    }
Ejemplo n.º 10
0
 // Update is called once per frame
 public BulletController(BulletModel model, BulletView bulletPrefab, Vector3 position, Quaternion rotation)
 {
     BulletModel = model;
     BulletView  = GameObject.Instantiate <BulletView>(bulletPrefab, position, rotation);
 }
Ejemplo n.º 11
0
 void Awake()
 {
     bulletView = GetComponent <BulletView>();
 }
Ejemplo n.º 12
0
 public void addChild(BulletView child)
 {
     child.transform.SetParent(transform, false);
 }
Ejemplo n.º 13
0
 public void GetAndFireBullet(Transform spawnBulletPos, float BulletPower, float Angle)
 {
     Debug.Log("BulletPower" + BulletPower);
     BulletView bulletView = BulletService.Instance.GetBullet(spawnBulletPos, BulletPower, Angle);
 }
Ejemplo n.º 14
0
 public void Free(BulletView bv)
 {
     bv.Inactive();
 }
Ejemplo n.º 15
0
 public BulletMoveController(BulletView bullet)
 {
     _bullet = bullet;
     _bullet.SetVisible(false);
 }
 public PhysicsBullet(BulletView view)
 {
     _view = view;
     _view.SetVisible(false);
 }
 private void RemoveBullet(BulletView bulletView)
 {
     bullets.Remove(bulletView);
     Destroy(bulletView.gameObject);
 }
Ejemplo n.º 18
0
    BulletView CreateBullet(Creature[] targets)
    {
        BulletView bv = BulletViewPool.Instance.Alloc(Bullet, Owner.Owner.transform.localPosition, targets);

        return(bv);
    }
 public void Dispose(BulletView inBullet)
 {
     inBullet.Visibility = false;
     SystemFacade.Pool.StoreGameView(inBullet);
 }