summaryrefslogtreecommitdiff
blob: ef573eba35c5f2bb99eab02ed342ef7edfb5ee2c (plain)
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
-module(battlemap_instance).
-export
(
   [
      get_char_instances/1,
      get_char_instance/2,
      set_char_instance/3
   ]
).

-include("timed_cache_data.hrl").

get_char_instances (BattlemapInstance) ->
   lists:map
   (
      fun ({_K, V}) -> V end,
      dict:to_list(BattlemapInstance#battlemap_instance.chars)
   ).

get_char_instance (BattlemapInstance, CharInstID) ->
   {ok, dict:fetch(CharInstID, BattlemapInstance#battlemap_instance.chars)}.

set_char_instance (BattlemapInstance, CharInstID, CharInst) ->
   BattlemapInstance#battlemap_instance
   {
      chars =
         dict:store
         (
            CharInstID,
            CharInst,
            BattlemapInstance#battlemap_instance.chars
         )
   }.