예제 #1
0
파일: Cheat.cs 프로젝트: T4g1/jamcraft4
    /**
     * Regenerate each parts of the current Weapon
     */
    void RandomizeWeapon()
    {
        Weapon weapon = Utility.GetWeapon();

        for (int i = 1; i <= WeaponPart.GetPartTypeCount(); i++)
        {
            PartType   partType = (PartType)i;
            WeaponPart part     = GameController.Instance.GenerateRandomWeaponPart(
                partType
                );

            weapon.SetPart(part);
        }
    }
예제 #2
0
    void Start()
    {
        Assert.IsNotNull(visor);
        Assert.IsNotNull(muzzle);

        partHolders = gameObject.GetComponentsInChildren <WeaponPartHolder>();

        Assert.IsNotNull(partHolders);
        Assert.IsTrue(partHolders.Length == WeaponPart.GetPartTypeCount());

        barrelHolder = GetHolder(PartType.BARREL);
        stockHolder  = GetHolder(PartType.STOCK);
        sightHolder  = GetHolder(PartType.SIGHT);
        stringHolder = GetHolder(PartType.STRING);
        handleHolder = GetHolder(PartType.HANDLE);
        quiverHolder = GetHolder(PartType.QUIVER);

        Assert.IsTrue(shootSFX != "");
        Assert.IsTrue(emptySFX != "");
        Assert.IsTrue(reloadSFX != "");

        Assert.IsNotNull(barrelHolder);
        Assert.IsNotNull(stockHolder);
        Assert.IsNotNull(sightHolder);
        Assert.IsNotNull(stringHolder);
        Assert.IsNotNull(handleHolder);
        Assert.IsNotNull(quiverHolder);

        MagazineClip = GetMagazineSize();

        playerCamera = Camera.main;

        flippedScale = new Vector3(
            defaultScale.x,
            defaultScale.y * -1,
            defaultScale.z
            );

        transform.rotation = Quaternion.Euler(
            0.0f,
            0.0f,
            0.0f
            );

        UpdateLayout();
    }
예제 #3
0
    public WeaponPart GenerateRandomWeaponPart(
        PartType forcePart = PartType.NONE
        )
    {
        WeaponPart part = ScriptableObject.CreateInstance <WeaponPart>();

        PartType partType = forcePart;

        if (partType == PartType.NONE)
        {
            partType = (PartType)(UnityEngine.Random.Range(
                                      0,
                                      WeaponPart.GetPartTypeCount()
                                      ) + 1);
        }

        switch (partType)
        {
        case PartType.QUIVER:
            part.RandomizeQuiver();
            break;

        case PartType.BARREL:
            part.RandomizeBarrel();
            break;

        case PartType.STOCK:
            part.RandomizeStock();
            break;

        case PartType.HANDLE:
            part.RandomizeHandle();
            break;

        case PartType.SIGHT:
            part.RandomizeSight();
            break;

        case PartType.STRING:
            part.RandomizeString();
            break;
        }

        return(part);
    }