Storing diffrent bullet amounts for different Weapons.
Hello, so i have a Prefab for my shoot and a reload function (in my player controller). Now i would like to add more than one weapon type(at the moment it just shoots on cklick), but i get stuck on the part were i have to store the diffrent ammo values. I search for a solution were i can change the Ammo values (on cklick) and the use these in my reload function. Thanks and sorry for typos in addvance, greetings from Switzerland.
//This isthe reload function with the reload delay
IEnumerator Reloading(float delay)
{
yield return new WaitForSecondsRealtime(delay);
canreload = false;
canfire = true;
//as long as the Magazine has less bullets than the reserver Ammo
if (TotalAmmoCapacity > Bulletcounter)
{
TotalAmmoCapacity = TotalAmmoCapacity - Bulletcounter;
Bulletcounter = 0;
}
//if the Magzine requests more bullets than available in the reserve Ammo
else
{
Bulletcounter1 = MagazineSize - Bulletcounter;
MagazineSize = TotalAmmoCapacity + Bulletcounter1;
TotalAmmoCapacity = 0;
Bulletcounter = 0;
}
}
//Fire on cklick
if (Input.GetButton("Fire1") && Time.time > nextFire && canfire == true)
{
nextFire = Time.time + BulletFireRate;
AudioPlayNOW = true;
Instantiate(shot, shotspawn.position, shotspawn.rotation);
Bulletcounter++;
}
I am searching now for over 2 days and google isnt my friend anymore. I would be really grateful over an example and not just some links.
I hope the question is not to noobish and i am just dumb.
Answer by snow2405 · Oct 12, 2017 at 07:52 AM
Ok so i found the solution now myself, i made int arrays and filled them with the value from above.
public float[] BulletFireRate; public int[] MagazineSize; public bool canreload = false; public int[] TotalAmmoCapacity;`
I would advise to create a class/struct to hold those information :
[System.Serializable]
public struct WeaponData
{
public float FireRate;
public int $$anonymous$$agazineSize ;
public int TotalAmmoCapacity;
}
Then, in your script declare as follow :
public WeaponData[] weaponsData ;
Your answer
Follow this Question
Related Questions
Weapon Select Menu 0 Answers
I need help picking up and dropping weapons 0 Answers
Weapons manager 1 Answer
What is wrong with my code? (Weapon Reload) 0 Answers
Function starting next time it is called (Weapon swapping issue) 0 Answers