昨日はExamplesRunner.csについて書いたが、
これはMainクラス的なScriptのサンプルが2つあるようだ。
・「DemoRunner.cs」
・「ExamplesRunner.cs」
※コード整形されてなくてコードが汚いです
これらをそれぞれMain Cameraなどにアタッチして実験すればいいと思います。
・DemoRunner.cs
こちらは直にDBにアクセスするような仕組みになっている。
SiaqodbExamplesクラスというDLLに隠れたクラスを使っている
ライセンスもDemoRunnerクラスへ書く
SiaqodbConfigurator.SetTrialLicense (@"your trial key");
databaseEXにDBのファイルできる。
SiaqodbExamplesがデータを作ってると思われるがDLL
DatabaseFactory.csをデータベースに一番近い部分でラッピングされていて、
KicksManager.csやPlayerManager.csなどを用いているサンプル。
こちらのほうが汎用性高いかも?
ちなみにこちらも"DatabaseFactory.cs"の下のコードにライセンス入れる
SiaqodbConfigurator.SetTrialLicense(@"your trial key");
5人の(サッカーゲームの?)プレイヤーがログインされている状態で、
ログイン時刻が表示され、
(2013/6/10, 2013/6/11と言った具合に2013/6/13にアクセスした2日前くらいの値が出ているので
どのタイミングで入れられたんだ?)
ランダムでプレイヤーが取り出され、
KicksManagerにそのプレイヤーの名前をキーにスコアをだす。
さらに、全プレイヤーベストスコアも出している模様。
ちなみにファイル自体はAssetsとかではなく、「SiaqodbUnityDemo/database」の中にある
sqoファイルだった。
Windows/Macがデフォルトになっており、iOS/Androidそれぞれのプラットフォームへ切り替えられる
//if ANDROID: //siaoqodbPath=Application.persistentDataPath; //if Windows or MAC siaoqodbPath = Environment.CurrentDirectory + Path.DirectorySeparatorChar + @"database"; //if iOS (iPhone /iPad) //siaoqodbPath =Application.dataPath;
中身はこうだった。
GameEntities.BallKick. GameEntities.sqo
GameEntities.Player. GameEntities.sqo
indexinfo2.sqo
rawdatainfo.sqo
siaoqodbPathには、特にファイル名の指定はなかったので、
各テーブル(NoSQLなのでドキュメント?)に相当した名前が付けられているかもしれない。
しかし、他のフォルダに指定を変えても普通に実行できた。どこからデータとってるんだ?
「database」を「databaseE」とか適当に変えて存在しないフォルダ名を指定しても勝手に作ってくれた。
データを勝手に作ってた犯人はGameSimulator.cs
GameSimulatorのPlay()のGeneratePlayers()によってPlayerやGenerateScores()によってスコアデータを作成されていた