Beispiel #1
0
    // Update is called once per frame
    void Update()
    {
        if (player.IsHuman)
        {
            RBPlayerPositionMultiplier = 1;
        }
        else
        {
            RBPlayerPositionMultiplier = RubberBandSettings.RubberBandPlayerPositionMultiplier(
                PlayerScript.getFirstHumanPlayerPosition(), lastRBPlayerPositionMultiplier);
        }

        lastRBPlayerPositionMultiplier = RBPlayerPositionMultiplier;
    }
    void Update()
    {
        if (player.IsHuman)
        {
            RBPositionMultiplier = 1;
        }
        else
        {
            RBPositionMultiplier = RubberBandSettings.RubberBandPositionMultiplier(
                playerPosition.raceposition, lastRBPositionMultiplier);
        }

        lastRBPositionMultiplier = RBPositionMultiplier;
    }
Beispiel #3
0
 void Update()
 {
     if (player.IsHuman)
     {
         myRigidbody.drag = 1;
         multiplier       = 1;
     }
     else
     {
         myRigidbody.drag   = RubberBandSettings.RubberBandDragAccelShiftMultiplier(position.raceposition, lastDragAccelShift);
         lastDragAccelShift = myRigidbody.drag;
         multiplier         = myRigidbody.drag;
     }
 }
Beispiel #4
0
    public static float getRandomAISeed()
    {
        if (rubberBandSettings == null)
        {
            rubberBandSettings = (RubberBandSettings)Resources.Load("RubberBandSettings");
        }

        float min = rubberBandSettings.randomAISeedMinLimit;
        float max = rubberBandSettings.randomAISeedMaxLimit;

        if (max - min <= 0)
        {
            return(1);
        }

        float range = max - min;

        return(min + (Random.value * range));
    }
Beispiel #5
0
    public static float RubberBandPositionMultiplier(int pos, float lastRBMutiplier)
    {
        if (rubberBandSettings == null)
        {
            rubberBandSettings = (RubberBandSettings)Resources.Load("RubberBandSettings");
        }

        if (!rubberBandSettings.enablePositionRB)
        {
            return(lastRBMutiplier);
        }

        float multiplier;

        pos--;
        if (pos < 0)
        {
            pos = 0;
        }

        if (pos >= rubberBandSettings.rubberBandPositionMultipliers.Length)
        {
            multiplier = rubberBandSettings.rubberBandPositionMultipliers[rubberBandSettings.rubberBandPositionMultipliers.Length - 1];
        }
        else
        {
            multiplier = rubberBandSettings.rubberBandPositionMultipliers[pos];
        }

        if (lastRBMutiplier == 0)
        {
            lastRBMutiplier = multiplier;
        }

        return(lastRBMutiplier +
               ((Time.deltaTime / rubberBandSettings.transactionTime) *
                (multiplier -
                 lastRBMutiplier)));
    }
Beispiel #6
0
    static void Init()
    {
        rubberBandSettings = (RubberBandSettings)AssetDatabase.LoadAssetAtPath(@"Assets\Resources\RubberBandSettings.asset", typeof(RubberBandSettings));

        if (rubberBandSettings == null)
        {
            if (!Directory.Exists(@"Assets\Resources"))
            {
                Debug.Log("Create \"resource\" folder");
                AssetDatabase.CreateFolder(@"Assets", "Resources");
            }
            Debug.Log("new RubberBandSettings created");
            rubberBandSettings = ScriptableObject.CreateInstance <RubberBandSettings>();
            AssetDatabase.CreateAsset(rubberBandSettings, @"Assets\Resources\RubberBandSettings.asset");
        }

        if (!AssetDatabase.Contains(rubberBandSettings))
        {
            AssetDatabase.CreateAsset(rubberBandSettings, @"Assets\Resources\RubberBandSettings.asset");
        }

        AssetDatabase.SaveAssets();
        Selection.objects = new Object[] { rubberBandSettings };
    }
 void Start()
 {
     player     = GetComponent <PlayerScript>();
     randomSeed = RubberBandSettings.getRandomAISeed();
 }