LibGDX json存储游戏物品

时间:2014-06-19 22:13:45

标签: json libgdx filehandle

我有一个名为item的类,其中有更多的int和float字段用于属性,如损坏,级别要求和其他内容。我想在json文件中保留一些预定义的项目,当我需要一个具有该组属性的新项目时,将其从json文件中取出。假设我想要一把剑和一把弓:

//json example file -- this isn't a proper file 
//this is a preview of what I would like
{
godly_sword {damage: 45, level: 10},
normal_bow {damage: 4, level: 3}
}

我希望能够通过名字从json中获取这些内容并使用以下属性创建一个新对象:

//Creating a new item which has a preset of attributes assigned to the name godly_sword
Item weapon = json.fromJson(Item.class, "godly_sword");

我尝试用不同的方式玩这个,但我所能做的只是加载一个预设:

//Proper json file
{
class: game.Item,
damage: 45,
level: 10
}

这有效,但它没有多大帮助,因为我不想为我预定义的每个项目创建一个json文件。任何建议都会非常有用。

1 个答案:

答案 0 :(得分:1)

键应该在引号中。

{
"godly_sword" {"damage": 45, "level": 10},
"normal_bow" {"damage": 4, "level": 3}
}

您还可以考虑在数组中定义武器,使用方括号[]。

Parsing JSON in libGdx上查看本教程。如果您是JSON的新手,它会以比libGdx wiki更清晰的方式解释事情。