Пример #1
0
    public void Dead(float rot, bool finish)
    {
        isAlive    = false;
        respawnRot = rot;

        // first drop the ragdoll
        if (ragdoll != null)
        {
            ragdoll.Die();
            ragdoll.baseRigidbody = null;
            ragdoll = null;
        }

        // now respawn?
        if (finish == true)
        {
            thisRigidbody.angularVelocity = 0;
            Respawn(rot);
        }
        else
        {
            thisRigidbody.angularVelocity = 0;
            thisRigidbody.velocity        = Vector2.zero;
            thisRigidbody.isKinematic     = true;
        }



        // TODO... this
    }
Пример #2
0
    internal RagdollPlayer GetRagdoll(Rigidbody2D connected)
    {
        RagdollPlayer pl = dead.Dequeue();

        pl.enabled = true;
        pl.Resurrect(true, connected);
        return(pl);
    }
Пример #3
0
 private void GetRagdoll()
 {
     if (ragdoll != null)
     {
         ragdoll.Die();
         ragdoll.baseRigidbody = null;
     }
     ragdoll = RagdollPool.singleton.GetRagdoll(thisRigidbody);
 }
Пример #4
0
    void Awake()
    {
        singleton = this;
        Vector3    pos = transform.position;
        Quaternion rot = transform.rotation;

        for (int i = 0; i < ragdollCount; i++)
        {
            GameObject obj = (GameObject)Instantiate(ragdollPrefab, pos, rot);
            obj.name             = "Ragdoll " + i;
            obj.transform.parent = transform;
            RagdollPlayer rg = obj.GetComponent <RagdollPlayer>();
            rg.Die();
            rg.enabled = false;
        }
    }
Пример #5
0
    public void CreateRagdoll()
    {
        var ic = InfoCharacter.Instance;

        currentRagdoll = Instantiate(GameSetup.gs.ragdollPrefab.GetComponent <RagdollPlayer>(), ragdollPoint.position, ragdollPoint.rotation, transform);

        var helmet = Instantiate(ic.GetHelmetObjLow(ic.dicTextureHelmetInfo[ragId[1]].prefabId), currentRagdoll.helmetPoint.position, currentRagdoll.helmetPoint.rotation, currentRagdoll.helmetPoint);

        helmet.transform.GetChild(0).GetComponent <MeshRenderer>().materials[0].SetTexture("_Albedo", ic.GetHelmetTextureLow(ragId[1]));

        currentRagdoll.suit.materials[0].SetTexture("_Albedo", ic.GetSuitTextureLow(ragId[2]));
        currentRagdoll.gloves.materials[0].SetTexture("_Albedo", ic.GetGlovesTextureLow(ragId[3]));
        currentRagdoll.boots.materials[0].SetTexture("_Albedo", ic.GetBootsTextureLow(ragId[4]));

        currentRagdoll.InitRagdoll();
        mcc.InitMoto();
    }
Пример #6
0
 public void RagdollDead(RagdollPlayer rg)
 {
     dead.Enqueue(rg);
 }
Пример #7
0
 void Awake()
 {
     thisRigidbody = GetComponent <Rigidbody2D>();
     ragdoll       = GetComponent <RagdollPlayer>();
 }