diff --git a/data/saland/items/base_items.json b/data/saland/items/base_items.json index bac47ef..f664684 100644 --- a/data/saland/items/base_items.json +++ b/data/saland/items/base_items.json @@ -1,29 +1,44 @@ { "items": [ { - "icon" : "item_food_potato", - "name" : "spell_spawn_item", - "item_name" : "food_potato" + "itemid" : "barrel", + "sprite" : "item_barrel", + "sprite2" : "", + "radius" : 16.0, + "isStatic" : true, + "isDestructible" : true, + "health" : 20, + "pickup" : false } ,{ - "icon" : "item_barrel", - "name" : "spell_spawn_item", - "item_name" : "barrel" + "itemid" : "tree_pine", + "sprite" : "tree_pine_trunk", + "sprite2" : "tree_pine_top", + "radius" : 20.0, + "isStatic" : true, + "isDestructible" : true, + "health" : 100, + "pickup" : false } ,{ - "icon" : "tree_palm_icon", - "name" : "spell_spawn_item", - "item_name" : "tree_palm" + "itemid" : "tree_palm", + "sprite" : "tree_palm", + "sprite2" : "", + "radius" : 20.0, + "isStatic" : true, + "isDestructible" : true, + "health" : 100, + "pickup" : false } ,{ - "icon" : "cactus_one", - "name" : "spell_spawn_item", - "item_name" : "cactus_full" - } - ,{ - "icon" : "tree_pine_icon", - "name" : "spell_spawn_item", - "item_name" : "tree_pine" + "itemid" : "cactus_full", + "sprite" : "cactus_full", + "sprite2" : "", + "radius" : 20.0, + "isStatic" : true, + "isDestructible" : true, + "health" : 100, + "pickup" : false } ] } diff --git a/src/saland/GameItems.cpp b/src/saland/GameItems.cpp index 5bcbd14..2372619 100644 --- a/src/saland/GameItems.cpp +++ b/src/saland/GameItems.cpp @@ -52,7 +52,7 @@ static void ReadItemFile(const std::string& filename) { } for (const auto& item : items.GetArray()) { if (item.IsObject()) { - ItemDef new_item = itemDef; + ItemDef new_item = itemDef; for (const auto& member : item.GetObject()) { if (member.name == "itemid") { new_item.itemid = member.value.GetString(); @@ -93,44 +93,6 @@ static void ReadItemFile(const std::string& filename) { } static void initItems() { - itemDef.sprite2 = ""; - itemDef.isDestructible = true; - itemDef.health = 100.0f; - itemDef.itemid = ""; - itemDef.pickup = false; - { - ItemDef barrel = itemDef; - barrel.itemid = "barrel"; - barrel.radius = 16.0f; - barrel.sprite = "item_barrel"; - barrel.isStatic = true; - all_items[barrel.itemid] = barrel; - } - { - ItemDef pine = itemDef; - pine.itemid = "tree_pine"; - pine.radius = 20.0f; - pine.sprite = "tree_pine_trunk"; - pine.sprite2 = "tree_pine_top"; - pine.isStatic = true; - all_items[pine.itemid] = pine; - } - { - ItemDef palm = itemDef; - palm.itemid = "tree_palm"; - palm.radius = 20.0f; - palm.sprite = "tree_palm"; - palm.isStatic = true; - all_items[palm.itemid] = palm; - } - { - ItemDef cactus = itemDef; - cactus.itemid = "cactus_full"; - cactus.radius = 20.0f; - cactus.sprite = "cactus_full"; - cactus.isStatic = true; - all_items[cactus.itemid] = cactus; - } std::vector file_list = sago::GetFileList(item_dir); for(const std::string& file : file_list) { std::string filename = fmt::format("{}{}", item_dir, file); @@ -144,4 +106,4 @@ const ItemDef& getItem(const std::string& itemName) { initItems(); } return all_items[itemName]; -} \ No newline at end of file +}