How To Post A List Of Data Into Gamespark Runtime Collection ? Unity C#

落爺英雄遲暮 提交于 2019-12-25 18:40:50

问题


I got a problem how to implement gamesparks cloud code. I want to make a add posting button, the data will save to gamesparks runtime collection. So far what i have done just make a save button one data for only one for each player. But i need to make a list of player data, so one player can save multiplayer data to runtime collection. Below is my cloud code gamesparks :

    Spark.setScriptData("player_Data", currentPlayer); // return the player via script-data
var playerDataList = Spark.runtimeCollection("playerNewspaper"); // this will get the collection of player data
  var playerID = Spark.getPlayer().getPlayerId(); // first we get the id of the current player
  var playerUsername =Spark.getPlayer().getUserName();
  var newspaper = Spark.getData().newspaper;

  var currentPlayer = {
  "playerID": playerID,
  "playerUsername": playerUsername,
  "player_newspaper": newspaper

  }; // we construct a new player from the data we are about to input into the player data

  playerDataList.insert({
  "playerID": playerID
  }, //Looks for a doc with the id of the current player
  {
  "$set": currentPlayer
  }, // 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)
  );

This cloud code only save one data for one player. When i save the data with same ID player it is not worked.

Below is noSql data preview : and below is my noSql preview data :

{
 "_id": {
  "$oid": "5850dfdb135f38fb1edbf28c"
 },
 "playerID": "57bffe76b6a70d6e2a3855b7",
 "playerUsername": "dennis",
 "player_newspaper": "{\"ID\":\"57bffg77b6a70d6e2a3855b7\",\"Username\":\"Dennis\",\"itemName\":\"Egg\",\"Comment\":\"Promo Telur 1 Butir cuman murah\",\"Date\":\"12/14/2016\"}"
}

I want to make a list of data posting by player. Although the posting is a same player of not.

This list posting data then i will use to query random 5 data and show it to unity i call it newspaper.

How to do it ?

Thanks Dennis


回答1:


Finally i got the solution myself.

I just realize this is a mongodb dan javascript.

So in mongodb if you want to insert a data like mysql here to do :

For Add Data :

var playerDataList = Spark.runtimeCollection("playerNewspaper"); // this will get the collection of player data
    var playerID = Spark.getPlayer().getPlayerId(); // first we get the id of the current player
    var playerUsername =Spark.getPlayer().getUserName();
    var newspaper = Spark.getData().newspaper;

    var currentPlayer = {
        "playerID": playerID,
        "playerUsername": playerUsername,
        "player_newspaper": newspaper

    }; // we construct a new player from the data we are about to input into the player data

    playerDataList.insert(
    {
      "newspaper" : currentPlayer
    } // Uses the $set mongo modifier to set old player data to the current player data
    );

For Load Data With random 5 Item :

var playerData = Spark.runtimeCollection("playerNewspaper"); // get the collection data
var currentPlayer = playerData.find().limit(5).skip(Math.random() * playerData.count());

Spark.setScriptData("player_Newspaper", currentPlayer); // return the player via script-data

That's All



来源:https://stackoverflow.com/questions/41274998/how-to-post-a-list-of-data-into-gamespark-runtime-collection-unity-c-sharp

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!