コード例 #1
0
ファイル: PlayerController.cs プロジェクト: amatt1552/AsteraX
    //jump Effect
    public void InitJumpEffect()
    {
        ParticleSystem particle = Instantiate(PlayerScriptableObject.GetRandomJumpEffect(), transform.position, transform.rotation);

        particle.Play();
        Destroy(particle.gameObject, 4);
    }
コード例 #2
0
ファイル: ShipParts.cs プロジェクト: amatt1552/AsteraX
    public void SetBody(uint index)
    {
        if (body != null && PlayerScriptableObject.GetBody(index) != null)
        {
            if (body.name != PlayerScriptableObject.GetBody(index).name)
            {
                Destroy(body);
            }
        }
        //log here
        if (body == null)
        {
            body = Instantiate(PlayerScriptableObject.GetBody(index));

            if (bodyParent.transform != null)
            {
                body.transform.parent        = bodyParent.transform;
                body.transform.localPosition = Vector3.zero;
                body.transform.localRotation = Quaternion.identity;
                body.name = PlayerScriptableObject.GetBody(index).name;
                SaveGameManager.Save();
            }
        }
        //log here
    }
コード例 #3
0
ファイル: ShipParts.cs プロジェクト: amatt1552/AsteraX
    public void SetTurret(uint index)
    {
        if (turret != null && PlayerScriptableObject.GetTurret(index) != null)
        {
            if (turret.name != PlayerScriptableObject.GetTurret(index).name)
            {
                Destroy(turret);
            }
        }
        //log here
        if (turret == null)
        {
            turret = Instantiate(PlayerScriptableObject.GetTurret(index));

            if (turretParent.transform != null)
            {
                turret.transform.parent        = turretParent.transform;
                turret.transform.localPosition = Vector3.zero;
                turret.transform.localRotation = Quaternion.AngleAxis(90, Vector3.right);
                turret.name = PlayerScriptableObject.GetTurret(index).name;
                SaveGameManager.Save();
            }
        }
        //log here
    }
コード例 #4
0
    void OnSceneLoaded(Scene scene, LoadSceneMode mode)
    {
        if (scene.buildIndex == 0)
        {
            SceneManager.LoadScene(1);
            return;
        }

        if (scene.buildIndex == 1)
        {
            selectedCharacters = new List <string>();
            playerIsReady      = new Dictionary <int, bool>();
            playerList         = new Dictionary <int, PlayerScriptableObject>();
        }

        if (scene.buildIndex == 2)
        {
            for (int i = 0; i < 4 - playerList.Count; i++)
            {
                GameObject.Find("P" + (4 - i).ToString()).gameObject.SetActive(false);
            }

            foreach (KeyValuePair <int, PlayerScriptableObject> kvp in playerList)
            {
                PlayerScriptableObject playerObject    = kvp.Value;
                GameObject             character       = Instantiate(characterPrefabs, GameObject.Find("Anchor_P" + playerObject.index).transform.position, Quaternion.identity);
                GameObject             characterSprite = Instantiate(playerObject.sprite, Vector3.zero, Quaternion.identity);
                character.GetComponent <PlayerController>().spriteGO  = characterSprite;
                character.GetComponent <PlayerController>().hitSprite = playerObject.hitSprite;
                GameObject.Find("P" + playerObject.index).GetComponent <CharacterUI>().avatar.sprite = playerObject.avatarSprite;
                character.GetComponent <KeyboardInputMgr>().playerIndex = (PlayerIndex)playerObject.index - 1;
                characterSprite.GetComponent <CharacterSprite>().target = character.transform;
            }
        }
    }
コード例 #5
0
    public override void Start()
    {
        base.Start();
        PlayerScriptableObject playerParameter = parameter as PlayerScriptableObject;

        UnityEngine.Assertions.Assert.IsNotNull(playerParameter, "Player用のパラメータが設定されていません。");
        this.stamina = maxStamina = playerParameter.maxStamina;
    }
コード例 #6
0
 // Start is called before the first frame update
 void Start()
 {
     rb                        = GetComponent <Rigidbody>();
     mainCam                   = Camera.main;
     dragVisualization         = GetComponentInChildren <LineRenderer>();
     playerSettings            = GameManager.instance.playerSettings;
     dragVisualization.enabled = false;
 }
コード例 #7
0
    protected override void Start()
    {
        base.Start();
        PlayerScriptableObject player = parameter as PlayerScriptableObject;

        UnityEngine.Assertions.Assert.IsNotNull(player, "Player用のパラメータが割り当てられていません。");
        this.countDict    = new Dictionary <GameObject, int>();
        this.defaultPower = power = player.normalAttackPower;
    }
コード例 #8
0
    public void updateProjectedScore(PlayerScriptableObject playerData)
    {
        float projection     = CurrentProjectedScore;
        float scoreDiffrence = playerData.score - projection;
        float diffrenceMean  = scoreDiffrence / projection;

        movingAvr.Add(playerData.score);
        while (movingAvr.Count > movingAvrCount)
        {
            movingAvr.RemoveAt(0);
        }
        var percentChange = currentDificultyModifyer * (diffrenceMean + 1);

        // y = (2 / PI) * arctan(100 * x) + 1
        currentDificultyModifyer = Mathf.Clamp(Mathf.Lerp(currentDificultyModifyer, currentDificultyModifyer * percentChange, 1f / movingAvrCount), 0, 2);
    }
コード例 #9
0
ファイル: VictoryUI.cs プロジェクト: ThibaultAr/GamJamAnkama
    public void updateUI(int score, PlayerScriptableObject player)
    {
        this.score.text = score.ToString();
        switch (player.characterName)
        {
        case "Ryuk":
            display(true, false, false, false);
            break;

        case "Blanche":
            display(false, true, false, false);
            break;

        case "Eve":
            display(false, false, false, true);
            break;

        case "Steve":
            display(false, false, true, false);
            break;
        }
    }
コード例 #10
0
    private void Reset()
    {
        //set default rigidbody settings
        _rb                        = GetComponent <Rigidbody>();
        _rb.useGravity             = false;
        _rb.constraints            = RigidbodyConstraints.FreezeRotation;
        _rb.collisionDetectionMode = CollisionDetectionMode.ContinuousSpeculative;
        _rb.mass                   = 1;

        //set capsule settings
        _capsuleCollider = GetComponent <CapsuleCollider>();
        _capsuleCollider.material.staticFriction  = 0;
        _capsuleCollider.material.dynamicFriction = 0;
        _capsuleCollider.material.frictionCombine = PhysicMaterialCombine.Minimum;

        // get camera
        _cam = GetComponentInChildren <Camera>();
        //if the object has no child with a camera
        if (_cam == null)
        {
            //create new gameobject set his parrent and his localposistion
            GameObject camObj = new GameObject("MainCamera");
            camObj.transform.SetParent(transform);

            //add the components
            _cam = camObj.AddComponent <Camera>();
            camObj.AddComponent <AudioListener>();
        }
        _cam.gameObject.tag  = "MainCamera";
        _cam.clearFlags      = CameraClearFlags.SolidColor;
        _cam.backgroundColor = Color.black;

        PlayerDataSO = (PlayerScriptableObject)Resources.Load("PlayerConfig");

        ChangeHeight(PlayerDataSO.playerData._normalHeight);
        gameObject.layer = LayerMask.NameToLayer("Player");
    }
コード例 #11
0
 public void setFromCabin(PlayerScriptableObject playerdata)
 {
     t.text = playerdata.cabin_seed;
 }
コード例 #12
0
 public PlayerScriptableObject()
 {
     _S = this;
 }
コード例 #13
0
 protected override void Awake()
 {
     base.Awake();
     m_Data = actor as PlayerScriptableObject;
 }
コード例 #14
0
    static public PlayerScriptableObject S;// This Scriptable Object is an unprotected Singleton

    public PlayerScriptableObject()
    {
        S = this; // Assign the Singleton as part of the constructor.
    }
コード例 #15
0
        void CreatePlayer(PlayerScriptableObject _data, World _currentWorld)
        {
            EntityManager manager = _currentWorld.EntityManager;

            m_playerEntity = manager.Instantiate(GameObjectConversionUtility.ConvertGameObjectHierarchy(_data.ObjectModel, _currentWorld));

            Translation t = new Translation();

            t.Value = new float3(_data.DefaultPosition);

            var moveData = new ObjectMoveData()
            {
                Speed     = 1.0f,
                Direction = t,
            };

            var playerData = new PlayerData()
            {
                Life          = _data.HP,
                PrevScreenPos = new float2(Screen.width * 0.5f, Screen.height * 0.5f),
            };
            var bulletFactoryData = new BulletFactoryData()
            {
                ParentEntity   = m_playerEntity,
                PositionOffset = float3.zero,
                RotationOffset = float3.zero,

                SpawnCycle = _data.SpawnCycle,
                SpawnTimer = _data.SpawnCycle,

                /* バレットパラメーター */
                Speed         = _data.BuleltSpeed,
                MoveDirection = new float3(0f, 0f, 1f),
                Damage        = _data.BulletDamage,
                BulletType    = 0,
            };


            var bulletFactorySys = _currentWorld.GetOrCreateSystem <BulletFactorySystem>();

            if (bulletFactorySys != null)
            {
                Camera cam           = Camera.main;
                float  frustumHeight = cam.transform.position.y * Mathf.Tan(cam.fieldOfView * 0.5f * Mathf.Deg2Rad);
                float  frustumWidth  = frustumHeight / Screen.height * Screen.width;

                float maxSize = math.max(frustumHeight * 2.0f, frustumWidth * 2.0f);
                int   count   = BulletFactorySystem.CalcPreloadObjectCount(maxSize, bulletFactoryData.Speed, 1.0f, bulletFactoryData.SpawnCycle);

                bulletFactoryData.BulletListHandler = bulletFactorySys.CreateBulletObject(count, _data.BulletModel, "MyBullet");
            }

            manager.SetComponentData <Translation>(m_playerEntity, t);
            manager.AddComponentData(m_playerEntity, moveData);
            manager.AddComponentData(m_playerEntity, playerData);
            manager.AddComponentData(m_playerEntity, bulletFactoryData);


            BulletCollisionSystem bulletSys = _currentWorld.GetOrCreateSystem <BulletCollisionSystem>();

            bulletSys.Initialize(m_playerEntity);

            _currentWorld.GetOrCreateSystem <BulletComponentSystem>().Initialize(Camera.main);
        }
コード例 #16
0
 public PlayerModel(PlayerScriptableObject player)
 {
     MovingSpeed = player.speed;
     Gravity     = player.garvity;
     Health      = player.health;
 }
コード例 #17
0
 public void setFromDeck(PlayerScriptableObject playerdata)
 {
     t.text = playerdata.deck_seed;
 }
コード例 #18
0
 public void setFromEngine(PlayerScriptableObject playerdata)
 {
     t.text = playerdata.engine_seed;
 }