Hi, how do i make an in-game shop system that allows me to spends points/etc earned to buy things, like buying new guns, cars etcor inventory system? I searched the forums for this, and found some inventory source codes, but cant figure how to use it to replace my cars/guns whatever.. can someone explain to me in detail how this works? Thanks!
It is Very Hard to Explain a Full Inventory, Quest, Merchant System In an Answer your best bet is to tackle something a little easier for you and get a grasp of the certain language that you are learning and then move on to tackle the inventory.
Read through the comments in the script, usually a programmer that is releasing the code will explain how to it works.
Usually people will not answer your question if it is completely ridiculous or shows you have not tried by showing a script.
Well, one problem I see from your question is that cars and guns are apparently grouped together. From the logical standpoint, how does your character carry cars on them at all times?
Your main problem, being unable to replace your own cars and guns, seems to be that you're using a prewritten script coupled with something you've written yourself without modifying the former at all. You need to look at your own script and then at the prewritten one and figure out how the prewritten script is managing inventory, then modify it to be relevant to your own existing code. As is, you haven't provided enough information to give you specific advice.
You need to consider all items from a generic viewpoint. Firstly an inventory will require a collection of different types of objects, it would be helpful if they had a common base class. This common base class should encapsulate all properties and methods common to all items. All items will have a value so that will go in the base class. We will need a way to use an item without know it's type, that implies some kind of polymorphic behavior will be needed. Here is a simplified example of this approach:
abstract class ItemBase
{
public float value;
public abstract void Use(Character character);
}
class Sword : ItemBase
{
public float damage = 5f;
override void Use(Character character)
{
character.SetWeapon(this);
}
}
class HealingPotion : ItemBase
{
float healAmount = 50f;
override void Use(Character character)
{
character.IncreaseHealth(healAmount);
}
}