File: GameFactory.java

package info (click to toggle)
flatbuffers 2.0.8%2Bdfsg1-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 14,308 kB
  • sloc: cpp: 44,808; python: 6,544; cs: 4,852; java: 4,389; ansic: 1,615; php: 1,455; xml: 973; javascript: 938; sh: 806; makefile: 35
file content (42 lines) | stat: -rw-r--r-- 1,611 bytes parent folder | download | duplicates (10)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
import java.nio.ByteBuffer;
import MyGame.Example.Monster;
import MyGame.Example.Stat;
import com.google.flatbuffers.FlatBufferBuilder;

class GameFactory {
  public static Monster createMonster(String monsterName, short nestedMonsterHp, short nestedMonsterMana) {
    FlatBufferBuilder builder = new FlatBufferBuilder();

    int name_offset = builder.createString(monsterName);
    Monster.startMonster(builder);
    Monster.addName(builder, name_offset);
    Monster.addHp(builder, nestedMonsterHp);
    Monster.addMana(builder, nestedMonsterMana);
    int monster_offset = Monster.endMonster(builder);
    Monster.finishMonsterBuffer(builder, monster_offset);

    ByteBuffer buffer = builder.dataBuffer();
    Monster monster = Monster.getRootAsMonster(buffer);
    return monster;
  }

  public static Monster createMonsterFromStat(Stat stat, int seqNo) {
    FlatBufferBuilder builder = new FlatBufferBuilder();
    int name_offset = builder.createString(stat.id() + " No." + seqNo);
    Monster.startMonster(builder);
    Monster.addName(builder, name_offset);
    int monster_offset = Monster.endMonster(builder);
    Monster.finishMonsterBuffer(builder, monster_offset);
    Monster monster = Monster.getRootAsMonster(builder.dataBuffer());
    return monster;
  }

  public static Stat createStat(String greeting, long val, int count) { 
    FlatBufferBuilder builder = new FlatBufferBuilder();
    int statOffset = Stat.createStat(builder, builder.createString(greeting), val, count);
    builder.finish(statOffset);
    Stat stat = Stat.getRootAsStat(builder.dataBuffer());
    return stat;
  }

}