| summaryrefslogtreecommitdiff | 
diff options
| author | nsensfel <SpamShield0@noot-noot.org> | 2018-10-03 18:02:03 +0200 | 
|---|---|---|
| committer | nsensfel <SpamShield0@noot-noot.org> | 2018-10-03 18:02:03 +0200 | 
| commit | 0d8e11193bf166758c2d9c46190b07b9b76f2958 (patch) | |
| tree | 5c09229233c0aed54738facfe4946195bc0ae0a8 | |
| parent | 00274059ed4db5b0f2be088b0098e376d836f6d2 (diff) | |
(Broken) still working on it...
| -rw-r--r-- | src/battle/btl_handler.erl | 12 | ||||
| -rw-r--r-- | src/battle/btl_shim.erl | 279 | ||||
| -rw-r--r-- | src/battle/reply/btl_add_char.erl | 3 | ||||
| -rw-r--r-- | src/battle/struct/btl_character.erl | 18 | ||||
| -rw-r--r-- | src/login/query/lgn_sign_up.erl | 49 | ||||
| -rw-r--r-- | src/query/qry_handler.erl | 1 | ||||
| -rw-r--r-- | src/query/qry_shim.erl | 21 | ||||
| -rw-r--r-- | src/shared/struct/shr_portrait.erl.m4 | 2 | ||||
| -rw-r--r-- | src/special/spe_battle.erl | 2 | ||||
| -rw-r--r-- | src/special/spe_player.erl | 70 | 
10 files changed, 104 insertions, 353 deletions
| diff --git a/src/battle/btl_handler.erl b/src/battle/btl_handler.erl index 0bcd40a..750c1f2 100644 --- a/src/battle/btl_handler.erl +++ b/src/battle/btl_handler.erl @@ -18,17 +18,5 @@  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  -spec start (pid()) -> 'ok'.  start (TimedCachesManagerPid) -> -   case shr_database:fetch(battle_db, <<"0">>, admin) of -      {ok, _} -> ok; -      not_found -> -         shr_database:insert_at -         ( -            battle_db, -            <<"0">>, -            any, -            any, -            btl_shim:generate_random_battle() -         ) -   end,     shr_timed_caches_manager:new_cache(TimedCachesManagerPid, battle_db, none),     ok. diff --git a/src/battle/btl_shim.erl b/src/battle/btl_shim.erl deleted file mode 100644 index aeb4b10..0000000 --- a/src/battle/btl_shim.erl +++ /dev/null @@ -1,279 +0,0 @@ --module(btl_shim). - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --export([generate_random_battle/0]). - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% LOCAL FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --spec generate_random_glyph_board_omnimods () -> shr_omnimods:type(). -generate_random_glyph_board_omnimods () -> -   % TODO [DEBUG: battle][HIGH]: unimplemented. -   shr_omnimods:new([],[],[],[]). - --spec generate_random_characters -   ( -      non_neg_integer(), -      non_neg_integer(), -      non_neg_integer(), -      non_neg_integer(), -      btl_map:type(), -      list(btl_location:type()), -      list(btl_character:type()) -   ) -   -> list(btl_character:type()). -generate_random_characters -( -   0, -   0, -   _CharactersPerPlayer, -   _TotalCharacterCount, -   _Map, -   _ForbiddenLocations, -   Result -) -> -   Result; -generate_random_characters -( -   MaxPlayerIX, -   0, -   CharactersPerPlayer, -   TotalCharacterCount, -   Map, -   ForbiddenLocations, -   Result -) -> -   generate_random_characters -   ( -      (MaxPlayerIX - 1), -      CharactersPerPlayer, -      CharactersPerPlayer, -      TotalCharacterCount, -      Map, -      ForbiddenLocations, -      Result -   ); -generate_random_characters -( -   MaxPlayerIX, -   PlayerCharacterCount, -   CharactersPerPlayer, -   TotalCharacterCount, -   Map, -   ForbiddenLocations, -   Result -) -> -   NewCharacter = -      btl_character:random -      ( -         TotalCharacterCount, -         MaxPlayerIX, -         generate_random_glyph_board_omnimods(), -         Map, -         ForbiddenLocations -      ), -   Character = -      case MaxPlayerIX of -         0 -> btl_character:set_is_active(true, NewCharacter); -         _ -> NewCharacter -      end, - -   generate_random_characters -   ( -      MaxPlayerIX, -      (PlayerCharacterCount - 1), -      CharactersPerPlayer, -      (TotalCharacterCount + 1), -      Map, -      [btl_character:get_location(Character)|ForbiddenLocations], -      [Character|Result] -   ). - --spec new_demo_map () -> list(list(non_neg_integer())). -new_demo_map () -> -   [[4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], -   [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], -   [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], -   [4,0], [4,0], [4,0], [1,0,4,34], [1,0,4,36], [4,0], [1,0,4,18], [4,0], -   [4,0], [2,0,4,34], [2,0,4,36], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], -   [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], -   [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [1,0,4,16], [1,0,4,45], -   [1,0,4,40], [1,0,4,41], [1,0,2,12,4,40], [1,0,2,5,4,40], [2,0,4,43], -   [2,0,4,45], [2,0,4,36], [4,0], [2,0,4,34], [2,0,4,40], [2,0,4,40], -   [2,0,4,40], [1,0,2,3,4,36], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], -   [4,0], [4,0], [4,0], [1,0,4,18], [4,0], [4,0], [4,0], [4,0], [4,0], -   [1,0,4,34], [1,0,4,43], [1,0], [1,0], [1,0,2,12], [1,0,2,5], [2,0], [2,0], -   [2,0], [2,0,4,45], [2,0,4,40], [2,0,4,43], [2,0], [2,0], [2,0], [2,0,4,45], -   [2,0,4,40], [1,0,2,16,4,40], [1,0,4,40], [1,0,4,40], [1,0,4,36], [4,0], -   [4,0], [4,0], [1,0,4,34], [1,0,4,40], [1,0,4,29], [4,0], [4,0], [4,0], -   [4,0], [1,0,4,34], [1,0,4,43], [1,0], [1,0], [1,0,2,12], [1,0,2,5], [2,0], -   [2,0], [2,0], [2,0], [2,0], [2,0], [2,0], [2,0], [2,0], [2,0], [2,0], -   [1,0,2,34], [1,0,2,43], [1,0], [1,0], [1,0,4,45], [1,0,4,40], -   [1,0,2,12,4,40], [1,0,2,9,4,40], [1,0,2,9,4,43], [1,0,2,9], [1,0,2,10,4,45], -   [1,0,2,9,4,39], [1,0,2,11,4,21], [4,0], [4,0], [1,0,4,3], [1,0,4,11], [1,0], -   [1,0,2,12], [1,0,2,5], [2,0], [2,0], [2,0], [2,0], [2,0], [2,0], [2,0], -   [2,0], [2,0], [2,0], [3,0,2,34], [1,0,2,40], [1,0,2,43], [1,0], [1,0], -   [1,0], [1,0], [1,0,2,12], [1,0,2,5], [2,0], [2,0], [2,0], [1,0,2,23], -   [2,0,4,30], [4,0], [4,0], [4,0], [4,0], [1,0,4,3], [1,0,4,11], [1,0,2,30], -   [2,0], [2,0], [2,0], [2,0], [2,0], [2,0], [2,0], [2,0], [2,0], [2,0], -   [3,0,2,34], [3,0,2,43], [1,0], [1,0], [1,0], [1,0], [1,0], [1,0], -   [1,0,2,30], [2,0], [2,0], [2,0], [2,0], [2,0], [2,0,4,30], [4,0], [4,0], -   [4,0], [4,0], [4,0], [1,0,4,16], [1,0,2,30], [2,0], [2,0], [2,0], [2,0], -   [2,0], [2,0], [2,0], [2,0], [3,0,2,34], [3,0,2,40], [3,0,2,43], [3,0], -   [3,0], [1,0], [1,0], [1,0], [1,0], [1,0], [1,0,2,31], [1,0,2,21], [2,0], -   [2,0], [2,0], [2,0], [2,0,4,30], [4,0], [4,0], [4,0], [4,0], [4,0], -   [1,0,4,16], [1,0,2,45], [1,0,2,36], [2,0], [2,0], [2,0], [2,0], [2,0], -   [2,0], [3,0,2,34], [3,0,2,43], [3,0], [3,0], [3,0], [1,0], [1,0], [1,0], -   [1,0], [1,0], [1,0], [1,0,2,30], [2,0], [2,0], [2,0], [2,0], [2,0,4,12], -   [1,0,2,34,4,8], [1,0,2,43,4,21], [4,0], [4,0], [4,0], [1,0,4,34], -   [1,0,4,43], [1,0], [1,0,2,45], [1,0,2,36], [2,0], [2,0], [2,0], [2,0], -   [3,0,2,34], [3,0,2,43], [3,0], [3,0], [3,0], [3,0], [1,0], [1,0], [1,0], -   [1,0], [1,0,4,12], [1,0,4,9], [1,0,2,30,4,11], [2,0], [1,0,2,34], -   [1,0,2,40,4,12], [1,0,2,40,4,9], [1,0,2,40,4,27], [4,0], [4,0], [4,0], -   [4,0], [4,0], [1,0,4,3], [1,0,4,11], [1,0], [1,0], [1,0,2,45], [1,0,2,36], -   [2,0], [2,0], [3,0,2,34], [3,0,2,43], [3,0], [3,0], [3,0], [3,0], [1,0], -   [1,0], [1,0], [1,0,4,12], [1,0,4,9], [1,0,4,5], [4,0], [1,0,2,45,4,3], -   [1,0,2,40,4,9], [1,0,2,43,4,9], [1,0,4,5], [4,0], [1,0,4,23], [4,0], [4,0], -   [4,0], [4,0], [4,0], [4,0], [1,0,4,16], [1,0], [1,0], [1,0], [1,0,2,45], -   [1,0,2,40], [1,0,2,40], [3,0,2,43], [3,0], [3,0], [3,0], [1,0], [1,0], -   [1,0], [1,0], [1,0], [1,0,4,30], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], -   [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [1,0,4,34], -   [1,0,4,43], [1,0], [1,0], [1,0], [1,0], [1,0,2,12], [1,0,2,9], [1,0,2,11], -   [1,0], [1,0], [3,0,2,12], [1,0,2,9], [1,0,2,11], [1,0], [1,0], [1,0], -   [1,0,4,45], [1,0,4,40], [1,0,4,36], [4,0], [4,0], [4,0], [4,0], [4,0], -   [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [1,0,4,3], [1,0,4,11], -   [1,0], [1,0], [1,0], [1,0], [1,0,2,30], [2,0], [1,0,2,3], [1,0,2,10], -   [1,0,2,9], [1,0,2,5], [2,0], [1,0,2,3], [1,0,2,11], [1,0], [1,0], [1,0], -   [1,0], [1,0,4,45], [1,0,4,40], [1,0,4,40], [1,0,4,36], [4,0], [2,0,4,34], -   [2,0,4,40], [2,0,4,36], [4,0], [1,0,4,18], [4,0], [4,0], [4,0], [4,0], -   [1,0,4,16], [1,0,2,12], [1,0,2,9], [1,0,2,9], [1,0,2,9], [1,0,2,5], [2,0], -   [2,0], [1,0,2,23], [2,0], [2,0], [2,0], [2,0], [1,0,2,16], [1,0], [1,0], -   [1,0], [1,0], [1,0], [1,0], [1,0], [1,0,2,12,4,45], [1,0,2,5,4,40], -   [2,0,4,43], [2,0], [2,0,4,45], [1,0,2,16,4,39], [1,0,4,4], [4,0], [4,0], -   [4,0], [4,0], [1,0,4,3], [1,0,2,30,4,11], [2,0], [2,0], [2,0], [2,0], [2,0], -   [2,0], [2,0], [2,0], [2,0], [2,0], [2,0], [1,0,2,16], [1,0], [3,0], -   [1,0,4,12], [1,0,4,9], [1,0,4,11], [1,0], [1,0], [1,0,2,30], [2,0], [2,0], -   [2,0], [1,0,2,34], [1,0,2,43,4,30], [4,0], [4,0], [4,0], [4,0], [4,0], -   [4,0], [1,0,2,30,4,16], [2,0], [2,0], [2,0], [1,0,2,34], [1,0,2,36], [2,0], -   [1,0,2,18], [2,0], [2,0], [2,0], [1,0,2,34], [1,0,2,43], [3,0], [3,0,4,12], -   [1,0,4,5], [4,0], [1,0,4,3], [1,0,4,9], [1,0,4,11], [1,0,2,30], [2,0], -   [2,0], [2,0], [1,0,2,3], [1,0,2,9,4,30], [4,0], [4,0], [4,0], [4,0], [4,0], -   [1,0,4,34], [1,0,2,45,4,43], [1,0,2,36], [2,0], [1,0,2,34], [1,0,2,43], -   [1,0,2,45], [1,0,2,40], [1,0,2,29], [2,0], [3,0,2,18], [2,0], [3,0,2,16], -   [3,0], [3,0], [3,0,4,30], [4,0], [4,0], [4,0], [4,0], [1,0,4,16], -   [1,0,2,30], [2,0], [2,0], [2,0], [2,0], [2,0,4,31], [2,0,4,21], [4,0], -   [4,0], [4,0], [4,0], [1,0,4,16], [1,0], [1,0,2,45], [1,0,2,40], [1,0,2,43], -   [1,0,4,12], [1,0,4,9], [1,0,4,9], [1,0,2,45,4,11], [1,0,2,40], [3,0,2,41], -   [3,0,2,40], [3,0,2,43], [3,0], [3,0], [3,0,4,45], [1,0,4,36], [4,0], [4,0], -   [1,0,4,34], [1,0,4,43], [1,0,2,45], [1,0,2,36], [2,0], [2,0], [2,0,4,12], -   [2,0,4,5], [4,0], [4,0], [4,0], [4,0], [1,0,4,22], [1,0,4,17], [1,0], [1,0], -   [1,0,4,12], [1,0,4,9], [1,0,4,5], [4,0], [4,0], [1,0,4,16], [3,0], [3,0], -   [3,0], [3,0], [3,0], [3,0], [3,0,2,12], [1,0,2,9,4,45], [1,0,2,9,4,40], -   [1,0,2,9,4,40], [1,0,2,11,4,43], [1,0], [1,0], [1,0,2,45], [1,0,2,36], -   [2,0,4,12], [2,0,4,5], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [1,0,4,16], -   [1,0], [1,0], [1,0,4,30], [4,0], [4,0], [4,0], [4,0], [1,0,4,16], [3,0], -   [3,0], [3,0], [3,0,2,12], [3,0,2,9], [3,0,2,9], [3,0,2,5], [2,0], [2,0], -   [2,0], [1,0,2,16], [1,0], [1,0], [1,0], [1,0,2,45], [1,0,2,40,4,30], [4,0], -   [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [1,0,4,16], [1,0], [1,0], -   [1,0,4,30], [4,0], [4,0], [4,0], [4,0], [1,0,4,16], [1,0], [3,0,2,12], -   [3,0,2,9], [3,0,2,5], [2,0], [2,0], [2,0], [2,0], [2,0], [2,0], [1,0,2,16], -   [1,0], [1,0], [1,0], [1,0], [1,0,4,31], [1,0,4,21], [4,0], [4,0], [4,0], -   [4,0], [4,0], [4,0], [1,0,4,16], [1,0], [1,0], [1,0,4,30], [4,0], [4,0], -   [4,0], [4,0], [1,0,4,16], [1,0], [1,0,2,30], [2,0], [2,0], [2,0], [2,0], -   [2,0], [2,0], [2,0], [1,0,2,34], [1,0,2,43], [1,0], [1,0], [1,0], -   [1,0,4,12], [1,0,4,5], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], -   [1,0,4,16], [1,0], [1,0], [1,0,4,30], [4,0], [4,0], [1,0,4,34], [1,0,4,40], -   [1,0,4,43], [1,0], [1,0,2,30], [2,0], [2,0], [2,0], [2,0], [2,0], -   [1,0,2,34], [1,0,2,40], [1,0,2,43], [1,0], [1,0], [1,0], [1,0], [1,0,4,30], -   [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [1,0,4,16], [1,0], -   [1,0], [1,0,4,45], [1,0,4,40], [1,0,4,40], [1,0,2,12,4,43], [1,0,2,9], -   [1,0,2,9], [1,0,2,9], [1,0,2,44], [1,0,2,40], [1,0,2,40], [1,0,2,40], -   [1,0,2,40], [1,0,2,40], [1,0,2,43], [1,0], [1,0], [1,0], [1,0], [1,0], -   [1,0,4,12], [1,0,4,5], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], -   [1,0,4,34], [1,0,4,43], [1,0], [1,0], [1,0,2,12], [1,0,2,9], [1,0,2,9], -   [1,0,2,5], [2,0], [2,0], [2,0], [1,0,2,3], [1,0,2,11], [1,0], [1,0], [1,0], -   [1,0], [1,0], [1,0], [1,0], [1,0], [1,0], [1,0,4,12], [1,0,4,5], [4,0], -   [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [1,0,4,33], [1,0,4,7], [1,0,4,9], -   [1,0,4,11], [1,0], [1,0,2,30], [2,0], [2,0], [2,0], [2,0], [2,0], [2,0], -   [2,0], [1,0,2,16], [1,0], [1,0], [1,0], [1,0], [1,0], [1,0], [1,0], [1,0], -   [1,0], [1,0,4,30], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], -   [1,0,4,23], [4,0], [4,0], [1,0,4,16], [1,0], [1,0,2,45], [1,0,2,40], -   [1,0,2,36], [2,0], [2,0], [2,0], [2,0], [2,0], [1,0,2,16], [1,0], -   [1,0,4,12], [1,0,4,9], [1,0,4,11], [1,0], [1,0,4,12], [1,0,4,9], [1,0,4,9], -   [1,0,4,10], [1,0,4,8], [1,0,4,21], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], -   [4,0], [4,0], [4,0], [4,0], [1,0,4,16], [1,0,4,12], [1,0,4,9], [1,0,4,9], -   [1,0,2,45,4,9], [1,0,2,40,4,11], [1,0,2,36], [2,0], [2,0], [1,0,2,34,4,12], -   [1,0,2,43,4,9], [1,0,4,9], [1,0,4,5], [4,0], [1,0,4,3], [1,0,4,9], -   [1,0,4,5], [4,0], [4,0], [1,0,4,26], [4,0], [4,0], [4,0], [4,0], [4,0], -   [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [1,0,4,22], [1,0,4,17], -   [1,0,4,30], [4,0], [4,0], [4,0], [1,0,4,16], [1,0,2,45,4,12], -   [1,0,2,40,4,9], [1,0,2,40,4,10], [1,0,2,43,4,5], [4,0], [4,0], [4,0], [4,0], -   [4,0], [4,0], [4,0], [4,0], [4,0], [1,0,4,23], [4,0], [4,0], [4,0], [4,0], -   [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [1,0,4,3], -   [1,0,4,5], [4,0], [4,0], [1,0,4,22], [1,0,4,7], [1,0,4,5], [4,0], -   [1,0,4,23], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], -   [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], -   [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], -   [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], -   [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0], [4,0]]. - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% EXPORTED FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --spec generate_random_battle () -> btl_battle:type(). -generate_random_battle () -> -   %MapWidth = 32, % shr_roll:between(16, 32), -   %MapHeight = 32, %shr_roll:between(16, 32), -   %Map = btl_map:random(0, MapWidth, MapHeight), -   Map = btl_map:from_list(32, 32, new_demo_map()), -   Characters = generate_random_characters(1, 8, 8, 0, Map, [], []), -   PlayersAsList = [btl_player:new(0, 8, <<"0">>), btl_player:new(1, 0, <<"1">>)], - -   {UsedWeaponIDs, UsedArmorIDs} = -      lists:foldl -      ( -         fun (Character, {UWIDs, UAIDs}) -> -            {MWpID, SWpID} = btl_character:get_weapon_ids(Character), -            AID = btl_character:get_armor_id(Character), -            { -               sets:add_element(MWpID, sets:add_element(SWpID, UWIDs)), -               sets:add_element(AID, UAIDs) -            } -         end, -         {sets:new(), sets:new()}, -         Characters -      ), - -   UsedTileIDs = -      array:sparse_foldl -      ( -         fun (_IX, TileInstance, CurrentTileIDs) -> -            sets:add_element -            ( -               shr_tile:extract_main_class_id(TileInstance), -               CurrentTileIDs -            ) -         end, -         sets:new(), -         btl_map:get_tile_instances(Map) -      ), - -   Battle = -      btl_battle:new -      ( -         <<"0">>, -         PlayersAsList, -         Map, -         Characters, -         sets:to_list(UsedWeaponIDs), -         sets:to_list(UsedArmorIDs), -         sets:to_list(UsedTileIDs) -      ), - -   Battle. diff --git a/src/battle/reply/btl_add_char.erl b/src/battle/reply/btl_add_char.erl index a6fb60c..6cd2157 100644 --- a/src/battle/reply/btl_add_char.erl +++ b/src/battle/reply/btl_add_char.erl @@ -41,8 +41,7 @@ generate (IX, Character, PlayerIX) ->           {<<"ix">>, IX},           {<<"nam">>, btl_character:get_name(Character)},           {<<"rnk">>, rank_to_string(btl_character:get_rank(Character))}, -         {<<"ico">>, btl_character:get_icon(Character)}, -         {<<"prt">>, btl_character:get_portrait(Character)}, +         {<<"prt">>, btl_character:get_portrait_id(Character)},           {              <<"hea">>,              btl_character:get_current_health(Character) diff --git a/src/battle/struct/btl_character.erl b/src/battle/struct/btl_character.erl index 1b90141..84eecfb 100644 --- a/src/battle/struct/btl_character.erl +++ b/src/battle/struct/btl_character.erl @@ -12,8 +12,7 @@        player_ix :: non_neg_integer(),        name :: binary(),        rank :: rank(), -      icon :: binary(), -      portrait :: binary(), +      portrait_id :: shr_portrait:id(),        weapon_ids :: {shr_weapon:id(), shr_weapon:id()},        armor_id :: shr_armor:id(),        location :: {non_neg_integer(), non_neg_integer()}, @@ -26,7 +25,7 @@  -opaque type() :: #character{}. --export_type([type/0, rank/0, id/0]). +-export_type([type/0, rank/0]).  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  %% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -37,7 +36,7 @@        get_player_index/1,        get_name/1,        get_rank/1, -      get_portrait/1, +      get_portrait_id/1,        get_weapon_ids/1,        get_armor_id/1,        get_location/1, @@ -67,7 +66,7 @@  -export  (     [ -      new/10 +      new/9     ]  ). @@ -88,11 +87,8 @@ get_name (Char) -> Char#character.name.  -spec get_rank (type()) -> rank().  get_rank (Char) -> Char#character.rank. --spec get_icon (type()) -> binary(). -get_icon (Char) -> Char#character.icon. - --spec get_portrait (type()) -> binary(). -get_portrait (Char) -> Char#character.portrait. +-spec get_portrait_id (type()) -> shr_portrait:id(). +get_portrait_id (Char) -> Char#character.portrait_id.  -spec get_armor_id (type()) -> shr_armor:id().  get_armor_id (Char) -> Char#character.armor_id. @@ -245,7 +241,7 @@ new        player_ix = PlayerIX,        name = Name,        rank = Rank, -      portrait = PortraitID, +      portrait_id = PortraitID,        weapon_ids = WeaponIDs,        armor_id = ArmorID,        location = Location, diff --git a/src/login/query/lgn_sign_up.erl b/src/login/query/lgn_sign_up.erl index 4111597..0632ac1 100644 --- a/src/login/query/lgn_sign_up.erl +++ b/src/login/query/lgn_sign_up.erl @@ -54,56 +54,11 @@ register_user (Input) ->     Password = Input#input.password,     Email = Input#input.email, -   UsernameLC = string:lowercase(Username), -   EmailLC = string:lowercase(Email), - -   shr_janitor:new(login_db, UsernameLC), -   shr_janitor:new(login_db, EmailLC), - -   ok = shr_database:reserve(login_db, UsernameLC, janitor), -   ok = shr_database:reserve(login_db, EmailLC, janitor), - -   Player = shr_player:new(<<"">>, Username, Password, Email), - -   {ok, PlayerID} = shr_database:insert(player_db, janitor, janitor, Player), - -   shr_janitor:new(player_db, PlayerID), - -   LoginUpdateQueryOps = -      [ -         shr_db_query:set_value(PlayerID), -         shr_db_query:set_read_permission(any), -         shr_db_query:set_write_permission([{user, PlayerID}]) -      ], - -   PlayerUpdateQueryOps = -      [ -         shr_db_query:set_field(shr_player:get_id_field(), PlayerID), -         shr_db_query:set_read_permission(any), -         shr_db_query:set_write_permission([{user, PlayerID}]) -      ], - -   ok = -      shr_database:commit -      ( -         shr_db_query:new(login_db, UsernameLC, janitor, LoginUpdateQueryOps) -      ), - -   ok = -      shr_database:commit -      ( -         shr_db_query:new(login_db, EmailLC, janitor, LoginUpdateQueryOps) -      ), - -   ok = -      shr_database:commit -      ( -         shr_db_query:new(player_db, PlayerID, janitor, PlayerUpdateQueryOps) -      ), +   GeneratedPlayer = spe_player:generate(Username, Password, Email),     #query_state     { -      player = shr_player:set_id(PlayerID, Player) +      player = GeneratedPlayer     }.  -spec generate_reply(query_state()) -> binary(). diff --git a/src/query/qry_handler.erl b/src/query/qry_handler.erl index deb4e33..8cab69f 100644 --- a/src/query/qry_handler.erl +++ b/src/query/qry_handler.erl @@ -24,4 +24,5 @@ start (_YawsParams) ->     ok = btl_handler:start(TimedCachesManagerPid),     ok = map_handler:start(TimedCachesManagerPid),     ok = rst_handler:start(TimedCachesManagerPid), +   ok = qry_shim:fill_db(),     ok. diff --git a/src/query/qry_shim.erl b/src/query/qry_shim.erl new file mode 100644 index 0000000..666f7ec --- /dev/null +++ b/src/query/qry_shim.erl @@ -0,0 +1,21 @@ +-module(qry_shim). + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +-export([fill_db/0]). + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% LOCAL FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% EXPORTED FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +-spec fill_db () -> 'ok'. +fill_db () -> +   ok. diff --git a/src/shared/struct/shr_portrait.erl.m4 b/src/shared/struct/shr_portrait.erl.m4 index 2ea3ca0..e009527 100644 --- a/src/shared/struct/shr_portrait.erl.m4 +++ b/src/shared/struct/shr_portrait.erl.m4 @@ -66,4 +66,4 @@ get_icon_id (Pt) -> Pt#portrait.icon_id.  m4_include(__MAKEFILE_DATA_DIR/portrait/global.m4.conf)m4_dnl  m4_include(__MAKEFILE_DATA_DIR/portrait/basic.m4d)m4_dnl  from_id(_) -> -   from_id(0). +   from_id(<<"cat">>). diff --git a/src/special/spe_battle.erl b/src/special/spe_battle.erl index 31f844a..4836fd2 100644 --- a/src/special/spe_battle.erl +++ b/src/special/spe_battle.erl @@ -48,7 +48,7 @@ get_equipment_ids (Characters) ->     {UsedWeaponIDs, UsedArmorIDs}. --spec get_tile_ids (array:array(shr_tile:type())) -> sets:set(binary()). +-spec get_tile_ids (array:array(shr_tile:instance())) -> sets:set(binary()).  get_tile_ids (TileInstances) ->     UsedTileIDs =        array:sparse_foldl diff --git a/src/special/spe_player.erl b/src/special/spe_player.erl new file mode 100644 index 0000000..9cf3fea --- /dev/null +++ b/src/special/spe_player.erl @@ -0,0 +1,70 @@ +-module(spe_player). + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +-export([generate/3]). + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% LOCAL FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% EXPORTED FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +-spec generate (binary(), binary(), binary()) -> shr_player:type(). +generate (Username, Password, Email) -> +   UsernameLC = string:lowercase(Username), +   EmailLC = string:lowercase(Email), + +   shr_janitor:new(login_db, UsernameLC), +   shr_janitor:new(login_db, EmailLC), + +   ok = shr_database:reserve(login_db, UsernameLC, janitor), +   ok = shr_database:reserve(login_db, EmailLC, janitor), + +   Player = shr_player:new(<<"">>, Username, Password, Email), + +   {ok, PlayerID} = shr_database:insert(player_db, janitor, janitor, Player), + +   shr_janitor:new(player_db, PlayerID), + +   LoginUpdateQueryOps = +      [ +         shr_db_query:set_value(PlayerID), +         shr_db_query:set_read_permission(any), +         shr_db_query:set_write_permission([{user, PlayerID}]) +      ], + +   PlayerUpdateQueryOps = +      [ +         shr_db_query:set_field(shr_player:get_id_field(), PlayerID), +         shr_db_query:set_read_permission(any), +         shr_db_query:set_write_permission([{user, PlayerID}]) +      ], + +   ok = +      shr_database:commit +      ( +         shr_db_query:new(login_db, UsernameLC, janitor, LoginUpdateQueryOps) +      ), + +   ok = +      shr_database:commit +      ( +         shr_db_query:new(login_db, EmailLC, janitor, LoginUpdateQueryOps) +      ), + +   ok = +      shr_database:commit +      ( +         shr_db_query:new(player_db, PlayerID, janitor, PlayerUpdateQueryOps) +      ), + +   Result = shr_player:set_id(PlayerID, Player), + +   Result. | 


