Я работаю над MMO-игрой. Мне нужно сохранить несколько символов и их информацию против одного идентификатора, потому что в моей игре игрок может сэкономить несколько героев (может играть от одного). Я создал событие, но когда пользователь сказал db для создания персонажа, он просто обновляет последнюю информацию.Сохранение нескольких символов по ID одного игрока в GameSpark
var CharacterDataList = Spark.runtimeCollection("CharacterData");
var playerID = Spark.getPlayer().getPlayerId();
var characterSelected = Spark.getData().CS;
var weaponLevel = Spark.getData().WL;
var cname = Spark.getData().NAME;
var wins = Spark.getData().WINS;
var loss = Spark.getData().LOSS;
var gold = Spark.getData().GOLD;
var currentCharacter = {
"playerID": playerID,
"characterSelected": characterSelected,
"weaponLevel": weaponLevel,
"name": cname,
"wins": wins,
"loss": loss,
"gold": gold
}; // we construct a new player from the data we are about to input into the player data
CharacterDataList.update({
"playerID": playerID
}, //Looks for a doc with the id of the current player
{
"$set": currentCharacter
}, // Uses the $set mongo modifier to set old player data to the current player data
true, // Create the document if it does not exist (upsert)
false // This query will only affect a single object (multi)
);
Над кодом будет работать на облаке. Как сохранить новый символ в отношении идентификатора. Я нашел команду Insert, но я не знаю, как использовать ее в моем случае для добавления информации. Код Unity приведен ниже.
public void CreateCharacterData(){
new GameSparks.Api.Requests.LogEventRequest()
.SetEventKey ("SAVE_CHARACTER_INFO")
.SetEventAttribute ("CS", "Humans")
.SetEventAttribute ("WL", 1)
.SetEventAttribute ("NAME", "ghfsdgfsj")
.SetEventAttribute ("WINS", 0)
.SetEventAttribute ("LOSS", 0)
.SetEventAttribute ("GOLD",100)
.Send((GameSparks.Api.Responses.LogEventResponse obj) => {
if(!obj.HasErrors){
print("Added Character");
}else{
print("Error");
}
});
}
Я нашел ссылку, но я до сих пор путают LINK.
Можете ли вы показать свою структуру db? – Shrabanee
@Shrabanee извините, не получил вашу точку –
Я предлагаю использовать массив объектов для выбранных символов. Каждый раз, когда пользователь выбирает символ, вы можете просто вставить эту информацию в массив выбранных символов. – Shrabanee