summaryrefslogtreecommitdiff |
diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/battlemap/Makefile | 72 | ||||
-rw-r--r-- | src/battlemap/bm_handler.erl (renamed from src/battlemap/src/handler.erl) | 8 | ||||
-rw-r--r-- | src/battlemap/game-logic/bm_movement.erl (renamed from src/battlemap/src/game-logic/movement.erl) | 28 | ||||
-rw-r--r-- | src/battlemap/game-logic/bm_next_turn.erl (renamed from src/battlemap/src/game-logic/next_turn.erl) | 81 | ||||
-rw-r--r-- | src/battlemap/game-logic/bm_roll.erl (renamed from src/battlemap/src/game-logic/roll.erl) | 2 | ||||
-rw-r--r-- | src/battlemap/game-logic/bm_turn_actions.erl (renamed from src/battlemap/src/game-logic/turn_actions.erl) | 206 | ||||
-rw-r--r-- | src/battlemap/io/bm_security.erl (renamed from src/battlemap/src/io/security.erl) | 2 | ||||
-rw-r--r-- | src/battlemap/mk/debug.mk | 40 | ||||
-rw-r--r-- | src/battlemap/mk/erlang.mk | 28 | ||||
-rw-r--r-- | src/battlemap/mk/preprocessor.mk | 44 | ||||
-rw-r--r-- | src/battlemap/mk/yaws.mk | 29 | ||||
-rw-r--r-- | src/battlemap/module.conf | 9 | ||||
-rw-r--r-- | src/battlemap/query/bm_character_turn.erl | 250 | ||||
-rw-r--r-- | src/battlemap/query/bm_load_state.erl (renamed from src/battlemap/src/query/load_state.erl) | 29 | ||||
-rw-r--r-- | src/battlemap/reply/add_char.erl (renamed from src/battlemap/src/reply/add_char.erl) | 0 | ||||
-rw-r--r-- | src/battlemap/reply/set_map.erl (renamed from src/battlemap/src/reply/set_map.erl) | 0 | ||||
-rw-r--r-- | src/battlemap/reply/set_timeline.erl (renamed from src/battlemap/src/reply/set_timeline.erl) | 0 | ||||
-rw-r--r-- | src/battlemap/reply/turn_results.erl (renamed from src/battlemap/src/reply/turn_results.erl) | 0 | ||||
-rw-r--r-- | src/battlemap/src/query/character_turn.erl | 255 | ||||
-rw-r--r-- | src/battlemap/struct/bm_attack.erl (renamed from src/battlemap/src/struct/attack.erl) | 51 | ||||
-rw-r--r-- | src/battlemap/struct/bm_battle.erl (renamed from src/battlemap/src/struct/battle.erl) | 46 | ||||
-rw-r--r-- | src/battlemap/struct/bm_battle_action.erl (renamed from src/battlemap/src/struct/battle_action.erl) | 6 | ||||
-rw-r--r-- | src/battlemap/struct/bm_battlemap.erl (renamed from src/battlemap/src/struct/battlemap.erl) | 22 | ||||
-rw-r--r-- | src/battlemap/struct/bm_character.erl (renamed from src/battlemap/src/struct/character.erl) | 32 | ||||
-rw-r--r-- | src/battlemap/struct/bm_character_turn_data.erl (renamed from src/battlemap/src/struct/character_turn_data.erl) | 20 | ||||
-rw-r--r-- | src/battlemap/struct/bm_character_turn_request.erl (renamed from src/battlemap/src/struct/character_turn_request.erl) | 10 | ||||
-rw-r--r-- | src/battlemap/struct/bm_character_turn_update.erl (renamed from src/battlemap/src/struct/character_turn_update.erl) | 20 | ||||
-rw-r--r-- | src/battlemap/struct/bm_direction.erl (renamed from src/battlemap/src/struct/direction.erl) | 2 | ||||
-rw-r--r-- | src/battlemap/struct/bm_location.erl (renamed from src/battlemap/src/struct/location.erl) | 4 | ||||
-rw-r--r-- | src/battlemap/struct/bm_player.erl (renamed from src/battlemap/src/struct/player.erl) | 2 | ||||
-rw-r--r-- | src/battlemap/struct/bm_player_turn.erl (renamed from src/battlemap/src/struct/player_turn.erl) | 2 | ||||
-rw-r--r-- | src/battlemap/struct/bm_tile.erl (renamed from src/battlemap/src/struct/tile.erl) | 4 | ||||
-rw-r--r-- | src/battlemap/struct/bm_turn_result.erl (renamed from src/battlemap/src/struct/turn_result.erl) | 36 | ||||
-rw-r--r-- | src/battlemap/struct/bm_weapon.erl (renamed from src/battlemap/src/struct/weapon.erl) | 17 | ||||
-rw-r--r-- | src/battlemap/util/array_util.erl (renamed from src/battlemap/src/util/array_util.erl) | 0 | ||||
-rw-r--r-- | src/db/Makefile | 71 | ||||
-rw-r--r-- | src/db/db_node.erl (renamed from src/db/src/db_node.erl) | 0 | ||||
-rw-r--r-- | src/db/logic/storage_access.erl (renamed from src/db/src/logic/storage_access.erl) | 0 | ||||
-rw-r--r-- | src/db/mk/debug.mk | 40 | ||||
-rw-r--r-- | src/db/mk/erlang.mk | 28 | ||||
-rw-r--r-- | src/db/mk/preprocessor.mk | 34 | ||||
-rw-r--r-- | src/db/module.conf | 6 | ||||
-rw-r--r-- | src/db/struct/db_model.erl (renamed from src/db/src/struct/db_model.erl) | 0 | ||||
-rw-r--r-- | src/db/struct/db_query.erl (renamed from src/db/src/struct/db_query.erl) | 13 | ||||
-rw-r--r-- | src/shared/include/db_item.hrl (renamed from src/db/include/db_item.hrl) | 0 | ||||
-rw-r--r-- | src/shared/include/db_query.hrl (renamed from src/db/include/db_query.hrl) | 0 | ||||
-rw-r--r-- | src/shared/include/db_user.hrl (renamed from src/db/include/db_user.hrl) | 0 | ||||
-rw-r--r-- | src/shared/io/sh_database.erl (renamed from src/battlemap/src/shim/database_shim.erl) | 30 | ||||
-rw-r--r-- | src/shared/io/sh_timed_cache.erl (renamed from src/battlemap/src/io/timed_cache.erl) | 12 | ||||
-rw-r--r-- | src/shared/io/sh_timed_caches_manager.erl (renamed from src/battlemap/src/io/timed_caches_manager.erl) | 2 | ||||
-rw-r--r-- | src/shared/struct/sh_attributes.erl (renamed from src/battlemap/src/struct/attributes.erl) | 14 | ||||
-rw-r--r-- | src/shared/struct/sh_db_item.erl (renamed from src/db/src/struct/db_item.erl) | 4 | ||||
-rw-r--r-- | src/shared/struct/sh_db_query.erl (renamed from src/battlemap/src/struct/db_query.erl) | 6 | ||||
-rw-r--r-- | src/shared/struct/sh_db_user.erl (renamed from src/db/src/struct/db_user.erl) | 4 | ||||
-rw-r--r-- | src/shared/struct/sh_statistics.erl (renamed from src/battlemap/src/struct/statistics.erl) | 2 |
55 files changed, 617 insertions, 1006 deletions
diff --git a/src/battlemap/Makefile b/src/battlemap/Makefile deleted file mode 100644 index 9b0c9f4..0000000 --- a/src/battlemap/Makefile +++ /dev/null @@ -1,72 +0,0 @@ -################################################################################ -## CONFIG ###################################################################### -################################################################################ -YAWS_CONF ?= ${CURDIR}/yaws.conf -YAWS_API_HEADER ?= /my/src/yaws/include/yaws_api.hrl - -MODULE_NAME ?= $ $(shell basename ${CURDIR}) -MODULE_PORT ?= 8001 - -DIALYZER_PLT_FILE ?= tacticians-server.plt - -## Main Directories -SRC_DIR ?= ${CURDIR}/src -CONF_DIR ?= ${CURDIR}/conf - -#### Optional Dirs -BIN_DIR ?= ${CURDIR}/ebin -INCLUDE_DIR ?= ${CURDIR}/include -WWW_DIR ?= ${CURDIR}/www -LOG_DIR ?= ${CURDIR}/log - -## Binaries -YAWS ?= yaws -ERLC ?= erlc -ERLC_OPTS ?= -DIALYZER ?= dialyzer - -################################################################################ -## MAKEFILE MAGIC ############################################################## -################################################################################ -OPTIONAL_DIRS = $(BIN_DIR) $(INCLUDE_DIR) $(WWW_DIR) $(LOG_DIR) -REQUIRED_HEADERS = $(INCLUDE_DIR)/yaws_api.hrl - -################################################################################ -## SANITY CHECKS ############################################################### -################################################################################ -YAWS_API_HEADER ?= /my/src/yaws/include/yaws_api.hrl -DIALYZER_PLT_FILE ?= tacticians-server.plt - -## Main Directories -SRC_DIR ?= src -CONF_DIR ?= conf - -################################################################################ -## INCLUDES #################################################################### -################################################################################ -main_target: all - -include ${CURDIR}/mk/debug.mk -include ${CURDIR}/mk/erlang.mk -include ${CURDIR}/mk/preprocessor.mk -include ${CURDIR}/mk/yaws.mk - -################################################################################ -## TARGET RULES ################################################################ -################################################################################ -all: build - -debug: debug_run - -build: $(REQUIRED_HEADERS) $(PREPROCESSOR_RESULT) $(ERLANG_RESULT) - -run: yaws_run - -clean: - rm -rf $(PREPROCESSOR_RESULT) $(ERLANG_RESULT) - -################################################################################ -## INTERNAL RULES ############################################################## -################################################################################ -$(OPTIONAL_DIRS): %: - mkdir -p $@ diff --git a/src/battlemap/src/handler.erl b/src/battlemap/bm_handler.erl index 1b79b69..09659e9 100644 --- a/src/battlemap/src/handler.erl +++ b/src/battlemap/bm_handler.erl @@ -1,4 +1,4 @@ --module(handler). +-module(bm_handler). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -17,7 +17,7 @@ %% EXPORTED FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% start (_YawsParams) -> - {ok, Pid} = timed_caches_manager:start(), - database_shim:generate_db(), - timed_caches_manager:new_cache(Pid, battle_db, none), + {ok, Pid} = sh_timed_caches_manager:start(), + bm_database_shim:generate_db(), + sh_timed_caches_manager:new_cache(Pid, battle_db, none), ok. diff --git a/src/battlemap/src/game-logic/movement.erl b/src/battlemap/game-logic/bm_movement.erl index 467f87b..ed4c38c 100644 --- a/src/battlemap/src/game-logic/movement.erl +++ b/src/battlemap/game-logic/bm_movement.erl @@ -1,4 +1,4 @@ --module(movement). +-module(bm_movement). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -19,19 +19,19 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -spec cross ( - battlemap:type(), - list(location:type()), - list(direction:enum()), + bm_battlemap:type(), + list(bm_location:type()), + list(bm_direction:enum()), non_neg_integer(), - location:type() + bm_location:type() ) - -> {location:type(), non_neg_integer()}. + -> {bm_location:type(), non_neg_integer()}. cross (_Battlemap, _ForbiddenLocations, [], Cost, Location) -> {Location, Cost}; cross (Battlemap, ForbiddenLocations, [Step|NextSteps], Cost, Location) -> - NextLocation = location:apply_direction(Step, Location), - NextTile = battlemap:get_tile_id(NextLocation, Battlemap), - NextCost = (Cost + tile:get_cost(NextTile)), + NextLocation = bm_location:apply_direction(Step, Location), + NextTile = bm_battlemap:get_tile_id(NextLocation, Battlemap), + NextCost = (Cost + bm_tile:get_cost(NextTile)), IsForbidden = lists:foldl ( @@ -48,11 +48,11 @@ cross (Battlemap, ForbiddenLocations, [Step|NextSteps], Cost, Location) -> -spec cross ( - battlemap:type(), - list(location:type()), - list(direction:enum()), - location:type() + bm_battlemap:type(), + list(bm_location:type()), + list(bm_direction:enum()), + bm_location:type() ) - -> {location:type(), non_neg_integer()}. + -> {bm_location:type(), non_neg_integer()}. cross (Battlemap, ForbiddenLocations, Path, Location) -> cross(Battlemap, ForbiddenLocations, Path, 0, Location). diff --git a/src/battlemap/src/game-logic/next_turn.erl b/src/battlemap/game-logic/bm_next_turn.erl index 8e7ca8a..3628111 100644 --- a/src/battlemap/src/game-logic/next_turn.erl +++ b/src/battlemap/game-logic/bm_next_turn.erl @@ -1,4 +1,4 @@ --module(next_turn). +-module(bm_next_turn). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -16,85 +16,90 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% LOCAL FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --spec set_player_turn_to_next (battle:type()) -> battle:type(). +-spec set_player_turn_to_next (bm_battle:type()) -> bm_battle:type(). set_player_turn_to_next (Battle) -> - Players = battle:get_players(Battle), - CurrentPlayerTurn = battle:get_current_player_turn(Battle), + Players = bm_battle:get_players(Battle), + CurrentPlayerTurn = bm_battle:get_current_player_turn(Battle), - NextPlayerTurn = player_turn:next(array:size(Players), CurrentPlayerTurn), + NextPlayerTurn = bm_player_turn:next(array:size(Players), CurrentPlayerTurn), - battle:set_current_player_turn(NextPlayerTurn, Battle). + bm_battle:set_current_player_turn(NextPlayerTurn, Battle). -spec reset_next_player_timeline ( - battle:type() + bm_battle:type() ) - -> {battle:type(), player:type()}. + -> {bm_battle:type(), bm_player:type()}. reset_next_player_timeline (Battle) -> - NextPlayerTurn = battle:get_current_player_turn(Battle), - NextPlayerIX = player_turn:get_player_ix(NextPlayerTurn), - NextPlayer = battle:get_player(NextPlayerIX, Battle), + NextPlayerTurn = bm_battle:get_current_player_turn(Battle), + NextPlayerIX = bm_player_turn:get_player_ix(NextPlayerTurn), + NextPlayer = bm_battle:get_player(NextPlayerIX, Battle), - UpdatedNextPlayer = player:reset_timeline(NextPlayer), - UpdatedBattle = battle:set_player(NextPlayerIX, UpdatedNextPlayer, Battle), + UpdatedNextPlayer = bm_player:reset_timeline(NextPlayer), + UpdatedBattle = + bm_battle:set_player(NextPlayerIX, UpdatedNextPlayer, Battle), {UpdatedBattle, UpdatedNextPlayer}. -spec activate_next_players_characters ( - battle:type(), - player:type() + bm_battle:type(), + bm_player:type() ) - -> {battle:type(), list(non_neg_integer())}. + -> {bm_battle:type(), list(non_neg_integer())}. activate_next_players_characters (Battle, NextPlayer) -> - NextPlayerID = player:get_id(NextPlayer), - Characters = battle:get_characters(Battle), + NextPlayerID = bm_player:get_id(NextPlayer), + Characters = bm_battle:get_characters(Battle), {UpdatedCharacters, ModifiedIXs} = array_util:mapiff ( fun (Character) -> - (character:get_owner_id(Character) == NextPlayerID) + (bm_character:get_owner_id(Character) == NextPlayerID) end, fun (Character) -> - character:set_is_active(true, Character) + bm_character:set_is_active(true, Character) end, Characters ), - UpdatedBattle = battle:set_characters(UpdatedCharacters, Battle), + UpdatedBattle = bm_battle:set_characters(UpdatedCharacters, Battle), {UpdatedBattle, ModifiedIXs}. -spec add_activation_updates ( list(non_neg_integer()), - character_turn_update:type() + bm_character_turn_update:type() ) - -> character_turn_update:type(). + -> bm_character_turn_update:type(). add_activation_updates ([], Update) -> Update; add_activation_updates ([IX|NextIXs], Update) -> add_activation_updates ( NextIXs, - character_turn_update:add_to_db + bm_character_turn_update:add_to_db ( - db_query:update_indexed + sh_db_query:update_indexed ( - battle:get_characters_field(), + bm_battle:get_characters_field(), IX, - [db_query:set_field(character:get_active_field(), true)] + [sh_db_query:set_field(bm_character:get_active_field(), true)] ), Update ) ). --spec update (character_turn_update:type()) -> character_turn_update:type(). +-spec update + ( + bm_character_turn_update:type() + ) + -> bm_character_turn_update:type(). update (Update) -> - Data = character_turn_update:get_data(Update), - Battle = character_turn_data:get_battle(Data), + Data = bm_character_turn_update:get_data(Update), + Battle = bm_character_turn_data:get_battle(Data), S0Battle = set_player_turn_to_next(Battle), {S1Battle, NextPlayer} = reset_next_player_timeline(S0Battle), @@ -103,24 +108,24 @@ update (Update) -> S0Update = add_activation_updates(ActivatedCharactersIX, Update), - UpdatedData = character_turn_data:set_battle(S2Battle, Data), + UpdatedData = bm_character_turn_data:set_battle(S2Battle, Data), - character_turn_update:set_data(UpdatedData, S0Update). + bm_character_turn_update:set_data(UpdatedData, S0Update). --spec requires_update (character_turn_update:type()) -> boolean(). +-spec requires_update (bm_character_turn_update:type()) -> boolean(). requires_update (Update) -> - Data = character_turn_update:get_data(Update), - Battle = character_turn_data:get_battle(Data), - Characters = battle:get_characters(Battle), + Data = bm_character_turn_update:get_data(Update), + Battle = bm_character_turn_data:get_battle(Data), + Characters = bm_battle:get_characters(Battle), - array_util:none(fun character:get_is_active/1, Characters). + array_util:none(fun bm_character:get_is_active/1, Characters). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% EXPORTED FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -spec update_if_needed ( - character_turn_update:type() + bm_character_turn_update:type() ) -> character_turn_update:type(). update_if_needed (Update) -> diff --git a/src/battlemap/src/game-logic/roll.erl b/src/battlemap/game-logic/bm_roll.erl index 074054b..be1cb9d 100644 --- a/src/battlemap/src/game-logic/roll.erl +++ b/src/battlemap/game-logic/bm_roll.erl @@ -1,4 +1,4 @@ --module(roll). +-module(bm_roll). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% diff --git a/src/battlemap/src/game-logic/turn_actions.erl b/src/battlemap/game-logic/bm_turn_actions.erl index e6aac9e..9664283 100644 --- a/src/battlemap/src/game-logic/turn_actions.erl +++ b/src/battlemap/game-logic/bm_turn_actions.erl @@ -1,4 +1,4 @@ --module(turn_actions). +-module(bm_turn_actions). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -20,102 +20,102 @@ %%%% SWITCHING WEAPON %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -spec handle_switch_weapon ( - character_turn_update:type() + bm_character_turn_update:type() ) - -> character_turn_update:type(). + -> bm_character_turn_update:type(). handle_switch_weapon (Update) -> - Data = character_turn_update:get_data(Update), - Character = character_turn_data:get_character(Data), - CharacterIX = character_turn_data:get_character_ix(Data), - CharacterAttributes = character:get_attributes(Character), - {PrimaryWeaponID, SecondaryWeaponID} = character:get_weapon_ids(Character), + Data = bm_character_turn_update:get_data(Update), + Character = bm_character_turn_data:get_character(Data), + CharacterIX = bm_character_turn_data:get_character_ix(Data), + CharacterAttributes = bm_character:get_attributes(Character), + {PrimaryWeaponID, SecondaryWeaponID} = bm_character:get_weapon_ids(Character), UpdatedWeaponIDs = {SecondaryWeaponID, PrimaryWeaponID}, UpdatedCharacterStatistics = - statistics:new(CharacterAttributes, UpdatedWeaponIDs), + bm_statistics:new(CharacterAttributes, UpdatedWeaponIDs), UpdatedCharacter = - character:set_statistics + bm_character:set_statistics ( UpdatedCharacterStatistics, - character:set_weapon_ids(UpdatedWeaponIDs, Character) + bm_character:set_weapon_ids(UpdatedWeaponIDs, Character) ), DBQuery = - db_query:update_indexed + sh_db_query:update_indexed ( - battle:get_characters_field(), + bm_battle:get_characters_field(), CharacterIX, [ - db_query:set_field + sh_db_query:set_field ( - character:get_weapons_field(), + bm_character:get_weapons_field(), UpdatedWeaponIDs ) ] ), - UpdatedData = character_turn_data:set_character(UpdatedCharacter, Data), + UpdatedData = bm_character_turn_data:set_character(UpdatedCharacter, Data), - S0Update = character_turn_update:set_data(UpdatedData, Update), + S0Update = bm_character_turn_update:set_data(UpdatedData, Update), S1Update = - character_turn_update:add_to_timeline + bm_character_turn_update:add_to_timeline ( - turn_result:new_character_switched_weapons(CharacterIX), + bm_turn_result:new_character_switched_weapons(CharacterIX), S0Update ), - character_turn_update:add_to_db(DBQuery, S1Update). + bm_character_turn_update:add_to_db(DBQuery, S1Update). %%%% MOVING %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -spec get_path_cost_and_destination ( - character_turn_data:type(), - list(direction:type()) + bm_character_turn_data:type(), + list(bm_direction:type()) ) - -> {non_neg_integer(), location:type()}. + -> {non_neg_integer(), bm_location:type()}. get_path_cost_and_destination (Data, Path) -> - Character = character_turn_data:get_character(Data), - CharacterIX = character_turn_data:get_character_ix(Data), - Battle = character_turn_data:get_battle(Data), - Battlemap = battle:get_battlemap(Battle), + Character = bm_character_turn_data:get_character(Data), + CharacterIX = bm_character_turn_data:get_character_ix(Data), + Battle = bm_character_turn_data:get_battle(Data), + Battlemap = bm_battle:get_battlemap(Battle), ForbiddenLocations = array:foldl ( fun (IX, Char, Prev) -> - IsAlive = character:get_is_alive(Char), + IsAlive = bm_character:get_is_alive(Char), if (IX == CharacterIX) -> Prev; (not IsAlive) -> Prev; - true -> [character:get_location(Char)|Prev] + true -> [bm_character:get_location(Char)|Prev] end end, [], - battle:get_characters(Battle) + bm_battle:get_characters(Battle) ), {NewLocation, Cost} = - movement:cross + bm_movement:cross ( Battlemap, ForbiddenLocations, Path, - character:get_location(Character) + bm_character:get_location(Character) ), {Cost, NewLocation}. -spec assert_character_can_move ( - character_turn_data:type(), + bm_character_turn_data:type(), non_neg_integer() ) -> 'ok'. assert_character_can_move (Data, Cost) -> - Character = character_turn_data:get_character(Data), - CharacterStatistics = character:get_statistics(Character), + Character = bm_character_turn_data:get_character(Data), + CharacterStatistics = bm_character:get_statistics(Character), CharacterMovementPoints = - statistics:get_movement_points(CharacterStatistics), + bm_statistics:get_movement_points(CharacterStatistics), true = (Cost =< CharacterMovementPoints), @@ -123,38 +123,38 @@ assert_character_can_move (Data, Cost) -> -spec commit_move ( - character_turn_update:type(), - list(direction:type()), - location:type() + bm_character_turn_update:type(), + list(bm_direction:type()), + bm_location:type() ) - -> character_turn_update:type(). + -> bm_character_turn_update:type(). commit_move (Update, Path, NewLocation) -> - Data = character_turn_update:get_data(Update), - Character = character_turn_data:get_character(Data), - CharacterIX = character_turn_data:get_character_ix(Data), + Data = bm_character_turn_update:get_data(Update), + Character = bm_character_turn_data:get_character(Data), + CharacterIX = bm_character_turn_data:get_character_ix(Data), - UpdatedCharacter = character:set_location(NewLocation, Character), + UpdatedCharacter = bm_character:set_location(NewLocation, Character), - UpdatedData = character_turn_data:set_character(UpdatedCharacter, Data), + UpdatedData = bm_character_turn_data:set_character(UpdatedCharacter, Data), S0Update = - character_turn_update:add_to_timeline + bm_character_turn_update:add_to_timeline ( - turn_result:new_character_moved(CharacterIX, Path, NewLocation), + bm_turn_result:new_character_moved(CharacterIX, Path, NewLocation), Update ), S1Update = - character_turn_update:add_to_db + bm_character_turn_update:add_to_db ( - db_query:update_indexed + sh_db_query:update_indexed ( - battle:get_characters_field(), + bm_battle:get_characters_field(), CharacterIX, [ - db_query:set_field + sh_db_query:set_field ( - character:get_location_field(), + bm_character:get_location_field(), NewLocation ) ] @@ -162,17 +162,17 @@ commit_move (Update, Path, NewLocation) -> S0Update ), - character_turn_update:set_data(UpdatedData, S1Update). + bm_character_turn_update:set_data(UpdatedData, S1Update). -spec handle_move ( - battle_action:type(), - character_turn_update:type() + bm_battle_action:type(), + bm_character_turn_update:type() ) - -> character_turn_update:type(). + -> bm_character_turn_update:type(). handle_move (BattleAction, Update) -> - Data = character_turn_update:get_data(Update), - Path = battle_action:get_path(BattleAction), + Data = bm_character_turn_update:get_data(Update), + Path = bm_battle_action:get_path(BattleAction), {PathCost, NewLocation} = get_path_cost_and_destination(Data, Path), assert_character_can_move(Data, PathCost), @@ -182,25 +182,25 @@ handle_move (BattleAction, Update) -> %%%% ATTACKING %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -spec handle_attack_sequence ( - character:type(), - character:type(), - list(attack:step()) + bm_character:type(), + bm_character:type(), + list(bm_attack:step()) ) - -> {list(attack:type()), non_neg_integer(), non_neg_integer()}. + -> {list(bm_attack:type()), non_neg_integer(), non_neg_integer()}. handle_attack_sequence ( Character, TargetCharacter, AttackSequence ) -> - CharacterStatistics = character:get_statistics(Character), - TargetCharacterStatistics = character:get_statistics(TargetCharacter), + CharacterStatistics = bm_character:get_statistics(Character), + TargetCharacterStatistics = bm_character:get_statistics(TargetCharacter), AttackPlannedEffects = lists:map ( fun (AttackStep) -> - attack:get_description_of + bm_attack:get_description_of ( AttackStep, CharacterStatistics, @@ -218,7 +218,7 @@ handle_attack_sequence {AttackValidEffects, AttackerHealth, DefenderHealth} ) -> {AttackResult, NewAttackerHealth, NewDefenderHealth} = - attack:apply_to_healths + bm_attack:apply_to_healths ( AttackEffectCandidate, AttackerHealth, @@ -236,48 +236,48 @@ handle_attack_sequence end, { [], - character:get_current_health(Character), - character:get_current_health(TargetCharacter) + bm_character:get_current_health(Character), + bm_character:get_current_health(TargetCharacter) }, AttackPlannedEffects ). -spec get_attack_sequence ( - character:type(), - character:type() + bm_character:type(), + bm_character:type() ) -> list(attack:step()). get_attack_sequence (Character, TargetCharacter) -> Range = location:dist ( - character:get_location(Character), - character:get_location(TargetCharacter) + bm_character:get_location(Character), + bm_character:get_location(TargetCharacter) ), - {AttackingWeaponID, _} = character:get_weapon_ids(Character), - {DefendingWeaponID, _} = character:get_weapon_ids(TargetCharacter), + {AttackingWeaponID, _} = bm_character:get_weapon_ids(Character), + {DefendingWeaponID, _} = bm_character:get_weapon_ids(TargetCharacter), - AttackingWeapon = weapon:from_id(AttackingWeaponID), - DefendingWeapon = weapon:from_id(DefendingWeaponID), + AttackingWeapon = bm_weapon:from_id(AttackingWeaponID), + DefendingWeapon = bm_weapon:from_id(DefendingWeaponID), - attack:get_sequence(Range, AttackingWeapon, DefendingWeapon). + bm_attack:get_sequence(Range, AttackingWeapon, DefendingWeapon). -spec handle_attack ( - battle_action:type(), - character_turn_update:type() + bm_battle_action:type(), + bm_character_turn_update:type() ) - -> character_turn_update:type(). + -> bm_character_turn_update:type(). handle_attack (BattleAction, Update) -> - Data = character_turn_update:get_data(Update), - Battle = character_turn_data:get_battle(Data), - Character = character_turn_data:get_character(Data), - CharacterIX = character_turn_data:get_character_ix(Data), - TargetIX = battle_action:get_target_ix(BattleAction), - TargetCharacter = battle:get_character(TargetIX, Battle), + Data = bm_character_turn_update:get_data(Update), + Battle = bm_character_turn_data:get_battle(Data), + Character = bm_character_turn_data:get_character(Data), + CharacterIX = bm_character_turn_data:get_character_ix(Data), + TargetIX = bm_battle_action:get_target_ix(BattleAction), + TargetCharacter = bm_battle:get_character(TargetIX, Battle), AttackSequence = get_attack_sequence(Character, TargetCharacter), @@ -290,17 +290,17 @@ handle_attack (BattleAction, Update) -> ), UpdatedCharacter = - character:set_current_health + bm_character:set_current_health ( RemainingAttackerHealth, Character ), UpdatedBattle = - battle:set_character + bm_battle:set_character ( TargetIX, - character:set_current_health + bm_character:set_current_health ( RemainingDefenderHealth, TargetCharacter @@ -309,9 +309,9 @@ handle_attack (BattleAction, Update) -> ), - S0Data = character_turn_data:set_battle(UpdatedBattle, Data), + S0Data = bm_character_turn_data:set_battle(UpdatedBattle, Data), S1Data = - character_turn_data:set_character + bm_character_turn_data:set_character ( UpdatedCharacter, S0Data @@ -319,9 +319,9 @@ handle_attack (BattleAction, Update) -> S0Update = - character_turn_update:add_to_timeline + bm_character_turn_update:add_to_timeline ( - turn_result:new_character_attacked + bm_turn_result:new_character_attacked ( CharacterIX, TargetIX, @@ -329,35 +329,35 @@ handle_attack (BattleAction, Update) -> ), Update ), - S1Update = character_turn_update:set_data(S1Data, S0Update), + S1Update = bm_character_turn_update:set_data(S1Data, S0Update), DBQuery = - db_query:update_indexed + sh_db_query:update_indexed ( - battle:get_characters_field(), + bm_battle:get_characters_field(), TargetIX, [ - db_query:set_field + sh_db_query:set_field ( - character:get_current_health_field(), + bm_character:get_current_health_field(), RemainingDefenderHealth ) ] ), - character_turn_update:add_to_db(DBQuery, S1Update). + bm_character_turn_update:add_to_db(DBQuery, S1Update). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% EXPORTED FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -spec handle ( - battle_action:type(), - character_turn_update:type() + bm_battle_action:type(), + bm_character_turn_update:type() ) --> character_turn_update:type(). +-> bm_character_turn_update:type(). handle (BattleAction, Update) -> - case battle_action:get_category(BattleAction) of + case bm_battle_action:get_category(BattleAction) of move -> handle_move(BattleAction, Update); switch_weapon -> handle_switch_weapon(Update); attack -> handle_attack(BattleAction, Update) diff --git a/src/battlemap/src/io/security.erl b/src/battlemap/io/bm_security.erl index 60f6661..787082a 100644 --- a/src/battlemap/src/io/security.erl +++ b/src/battlemap/io/bm_security.erl @@ -1,4 +1,4 @@ --module(security). +-module(bm_security). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% diff --git a/src/battlemap/mk/debug.mk b/src/battlemap/mk/debug.mk deleted file mode 100644 index 7e88422..0000000 --- a/src/battlemap/mk/debug.mk +++ /dev/null @@ -1,40 +0,0 @@ -################################################################################ -## CONFIG ###################################################################### -################################################################################ -DIALYZER_PLT_FILE ?= tacticians-server.plt -DIALYZER ?= dialyzer - -################################################################################ -## MAKEFILE MAGIC ############################################################## -################################################################################ -SRC_FILES ?= $(wildcard $(SRC_DIR)/*.erl $(SRC_DIR)/*/*.erl) - -################################################################################ -## SANITY CHECKS ############################################################### -################################################################################ - -################################################################################ -## TARGET RULES ################################################################ -################################################################################ -DEBUG_RESULT = $(DIALYZER_PLT_FILE) - -debug_rebuild: - $(MAKE) clean - $(MAKE) ERLC_OPTS=+debug_info - -################################################################################ -## INTERNAL RULES ############################################################## -################################################################################ -ifeq ($(wildcard $(DIALYZER_PLT_FILE)),) -debug_run: - $(DIALYZER) --build_plt --apps erts kernel stdlib jiffy --output_plt \ - $(DIALYZER_PLT_FILE) - $(MAKE) debug_rebuild - $(DIALYZER) --add_to_plt --plt $(DIALYZER_PLT_FILE) -r $(BIN_DIR) -else -debug_run: - $(MAKE) debug_rebuild - $(DIALYZER) --check_plt --plt $(DIALYZER_PLT_FILE) - $(DIALYZER) --get_warnings $(SRC_DIR)/*.erl $(SRC_DIR)/*/*.erl \ - --src --plt $(DIALYZER_PLT_FILE) -endif diff --git a/src/battlemap/mk/erlang.mk b/src/battlemap/mk/erlang.mk deleted file mode 100644 index 9150f63..0000000 --- a/src/battlemap/mk/erlang.mk +++ /dev/null @@ -1,28 +0,0 @@ -################################################################################ -## CONFIG ###################################################################### -################################################################################ -ERLC ?= erlc -ERLC_OPTS ?= - -################################################################################ -## MAKEFILE MAGIC ############################################################## -################################################################################ -SRC_FILES ?= $(wildcard $(SRC_DIR)/*.erl $(SRC_DIR)/*/*.erl) -BIN_FILES = \ - $(patsubst %.erl,$(BIN_DIR)/%.beam,$(notdir $(SRC_FILES))) - -################################################################################ -## SANITY CHECKS ############################################################### -################################################################################ - -################################################################################ -## TARGET RULES ################################################################ -################################################################################ -ERLANG_RESULT = $(BIN_DIR) $(BIN_FILES) - -################################################################################ -## INTERNAL RULES ############################################################## -################################################################################ -.SECONDEXPANSION: -$(BIN_FILES): $(BIN_DIR)/%.beam : $$(wildcard $(SRC_DIR)/*/%.erl $(SRC_DIR)/%.erl) - $(ERLC) $(ERLC_OPTS) -o $(BIN_DIR) $< diff --git a/src/battlemap/mk/preprocessor.mk b/src/battlemap/mk/preprocessor.mk deleted file mode 100644 index d27de1b..0000000 --- a/src/battlemap/mk/preprocessor.mk +++ /dev/null @@ -1,44 +0,0 @@ -################################################################################ -## CONFIG ###################################################################### -################################################################################ -CONFIG_FILE ?= ${CURDIR}/module.conf -YAWS_CONFIG_TEMPLATE ?= - -################################################################################ -## MAKEFILE MAGIC ############################################################## -################################################################################ -PREPROCESSOR_FILES = $(shell find ${CURDIR} -name "*.m4") -PREPROCESSED_FILES = $(patsubst %.m4,%,$(PREPROCESSOR_FILES)) - -MAKEFILE_TO_M4 = \ - --define=__MAKEFILE_MODULE_NAME=$(MODULE_NAME) \ - --define=__MAKEFILE_MODULE_PORT=$(MODULE_PORT) \ - --define=__MAKEFILE_BIN_DIR=$(BIN_DIR) \ - --define=__MAKEFILE_INCLUDE_DIR=$(INCLUDE_DIR) \ - --define=__MAKEFILE_LOG_DIR=$(LOG_DIR) \ - --define=__MAKEFILE_WWW_DIR=$(WWW_DIR) - -################################################################################ -## SANITY CHECKS ############################################################### -################################################################################ -ifeq ($(wildcard $(CONFIG_FILE)),) -$(error "Missing CONFIG_FILE ($(CONFIG_FILE)).") -endif - -ifeq ($(wildcard $(YAWS_CONFIG_TEMPLATE)),) -$(error "Missing YAWS_CONFIG_TEMPLATE ($(YAWS_CONFIG_TEMPLATE)).") -endif - -################################################################################ -## TARGET RULES ################################################################ -################################################################################ -PREPROCESSOR_RESULT = $(PREPROCESSED_FILES) yaws.conf - -################################################################################ -## INTERNAL RULES ############################################################## -################################################################################ -$(PREPROCESSED_FILES): %: $(CONFIG_FILE) %.m4 - m4 -P $^ > $@ - -yaws.conf: $(CONFIG_FILE) $(YAWS_CONFIG_TEMPLATE) - m4 -P $(MAKEFILE_TO_M4) $^ > $@ diff --git a/src/battlemap/mk/yaws.mk b/src/battlemap/mk/yaws.mk deleted file mode 100644 index a68edf2..0000000 --- a/src/battlemap/mk/yaws.mk +++ /dev/null @@ -1,29 +0,0 @@ -################################################################################ -## CONFIG ###################################################################### -################################################################################ -YAWS_CONF ?= ${CURDIR}/yaws.conf -YAWS_API_HEADER ?= /my/src/yaws/include/yaws_api.hrl - -YAWS ?= yaws -YAWS_OPTS ?= -name battlemap_node -erlarg "-connect_all false" - -################################################################################ -## MAKEFILE MAGIC ############################################################## -################################################################################ - -################################################################################ -## SANITY CHECKS ############################################################### -################################################################################ -YAWS_API_HEADER ?= /my/src/yaws/include/yaws_api.hrl - -################################################################################ -## TARGET RULES ################################################################ -################################################################################ -yaws_run: build $(WWW_DIR) $(LOG_DIR) - $(YAWS) --conf $(YAWS_CONF) $(YAWS_OPTS) - -################################################################################ -## INTERNAL RULES ############################################################## -################################################################################ -$(INCLUDE_DIR)/yaws_api.hrl: $(YAWS_API_HEADER) $(INCLUDE_DIR) - cp $< $@ diff --git a/src/battlemap/module.conf b/src/battlemap/module.conf deleted file mode 100644 index 8c2a2b6..0000000 --- a/src/battlemap/module.conf +++ /dev/null @@ -1,9 +0,0 @@ -m4_define(`__MODULE_NAME', `__MAKEFILE_MODULE_NAME')m4_dnl -m4_define(`__MODULE_PORT', `__MAKEFILE_MODULE_PORT')m4_dnl -m4_dnl -m4_define(`__MODULE_BIN_DIR', `__MAKEFILE_BIN_DIR')m4_dnl -m4_define(`__MODULE_INCLUDE_DIR', `__MAKEFILE_INCLUDE_DIR')m4_dnl -m4_define(`__MODULE_LOG_DIR', `__MAKEFILE_LOG_DIR')m4_dnl -m4_define(`__MODULE_WWW_DIR', `__MAKEFILE_WWW_DIR')m4_dnl -m4_dnl -m4_define(`__MODULE_APP_MODS', `character_turn load_state')m4_dnl diff --git a/src/battlemap/query/bm_character_turn.erl b/src/battlemap/query/bm_character_turn.erl new file mode 100644 index 0000000..26b8dce --- /dev/null +++ b/src/battlemap/query/bm_character_turn.erl @@ -0,0 +1,250 @@ +-module(bm_character_turn). + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +-include("../../../include/yaws_api.hrl"). + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +-export([out/1]). + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% LOCAL FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%-spec send_to_database (list(database_diff:type()), character_turn_request:type()) -> 'ok'. + + +%%%% REQUEST DECODING %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +-spec decode_request (binary()) -> bm_character_turn_request:type(). +decode_request (BinaryRequest) -> + JSONMap = jiffy:decode(BinaryRequest, [return_maps]), + + bm_character_turn_request:decode(JSONMap). + +%%%% USER AUTHENTICATION %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +-spec authenticate_user (bm_character_turn_request:type()) -> 'ok'. +authenticate_user (Request) -> + PlayerID = bm_character_turn_request:get_player_id(Request), + SessionToken = bm_character_turn_request:get_session_token(Request), + + bm_security:assert_identity(PlayerID, SessionToken), + bm_security:lock_queries(PlayerID), + + ok. + +%%%% MAIN LOGIC %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +-spec fetch_data + ( + bm_character_turn_request:type() + ) + -> bm_character_turn_data:type(). +fetch_data (Request) -> + PlayerID = bm_character_turn_request:get_player_id(Request), + BattleID = bm_character_turn_request:get_battle_id(Request), + CharacterIX = bm_character_turn_request:get_character_ix(Request), + Battle = sh_timed_cache:fetch(battle_db, PlayerID, BattleID), + + bm_character_turn_data:new(Battle, CharacterIX). + +%%%% ASSERTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +-spec assert_user_is_current_player + ( + bm_character_turn_data:type(), + bm_character_turn_request:type() + ) -> 'ok'. +assert_user_is_current_player (Data, Request) -> + PlayerID = bm_character_turn_request:get_player_id(Request), + Battle = bm_character_turn_data:get_battle(Data), + CurrentPlayerTurn = bm_battle:get_current_player_turn(Battle), + CurrentPlayerIX = bm_player_turn:get_player_ix(CurrentPlayerTurn), + CurrentPlayer = bm_battle:get_player(CurrentPlayerIX, Battle), + + true = (PlayerID == bm_player:get_id(CurrentPlayer)), + + ok. + +-spec assert_user_owns_played_character + ( + bm_character_turn_data:type(), + bm_character_turn_request:type() + ) -> 'ok'. +assert_user_owns_played_character (Data, Request) -> + PlayerID = bm_character_turn_request:get_player_id(Request), + Character = bm_character_turn_data:get_character(Data), + CharacterOwnerID = bm_character:get_owner_id(Character), + + true = (PlayerID == CharacterOwnerID), + + ok. + +-spec assert_character_can_be_played (bm_character_turn_data:type()) -> 'ok'. +assert_character_can_be_played (Data) -> + Character = bm_character_turn_data:get_character(Data), + + true = bm_character:get_is_active(Character), + + ok. + +-spec assert_user_permissions + ( + bm_character_turn_data:type(), + bm_character_turn_request:type() + ) -> 'ok'. +assert_user_permissions (Data, Request) -> + assert_user_is_current_player(Data, Request), + assert_user_owns_played_character(Data, Request), + assert_character_can_be_played(Data), + + ok. + +%%%% QUERY LOGIC HANDLING %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +-spec finalize_character + ( + bm_character_turn_update:type() + ) + -> bm_character_turn_update:type(). +finalize_character (Update) -> + Data = bm_character_turn_update:get_data(Update), + Character = bm_character_turn_data:get_character(Data), + + DisabledCharacter = bm_character:set_is_active(false, Character), + UpdatedData = bm_character_turn_data:set_character(DisabledCharacter, Data), + FinalizedData = bm_character_turn_data:clean_battle(UpdatedData), + + bm_character_turn_update:set_data(FinalizedData, Update). + +-spec handle_actions + ( + bm_character_turn_data:type(), + bm_character_turn_request:type() + ) + -> bm_character_turn_update:type(). +handle_actions (Data, Request) -> + Actions = bm_character_turn_request:get_actions(Request), + + EmptyUpdate = bm_character_turn_update:new(Data), + PostActionsUpdate = + lists:foldl(fun bm_turn_actions:handle/2, EmptyUpdate, Actions), + + finalize_character(PostActionsUpdate). + +-spec update_timeline + ( + bm_character_turn_update:type() + ) + -> bm_character_turn_update:type(). +update_timeline (Update) -> + NewTimelineElements = bm_character_turn_update:get_timeline(Update), + Data = bm_character_turn_update:get_data(Update), + Battle = bm_character_turn_data:get_battle(Data), + PlayerTurn = bm_battle:get_current_player_turn(Battle), + PlayerIX = bm_player_turn:get_player_ix(PlayerTurn), + Player = bm_battle:get_player(PlayerIX, Battle), + + UpdatedPlayer = bm_player:add_to_timeline(NewTimelineElements, Player), + UpdatedBattle = bm_battle:set_player(PlayerIX, UpdatedPlayer, Battle), + UpdatedData = bm_character_turn_data:set_battle(UpdatedBattle, Data), + + bm_character_turn_update:set_data(UpdatedData, Update). + +-spec update_data + ( + bm_character_turn_data:type(), + bm_character_turn_request:type() + ) + -> bm_character_turn_update:type(). +update_data (Data, Request) -> + PostActionsUpdate = handle_actions(Data, Request), + PostCharacterTurnUpdate = update_timeline(PostActionsUpdate), + + bm_next_turn:update_if_needed(PostCharacterTurnUpdate). + +%%%% DATABASE UPDATES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +-spec send_to_database + ( + bm_character_turn_update:type(), + bm_character_turn_request:type() + ) + -> 'ok'. +send_to_database (Update, Request) -> + PlayerID = bm_character_turn_request:get_player_id(Request), + BattleID = bm_character_turn_request:get_battle_id(Request), + Ops = bm_character_turn_update:get_db(Update), + Query = sh_db_query:new(battle_db, BattleID, {user, PlayerID}, Ops), + + % TODO: send queries to an actual DB... + + sh_database:commit(Query), + + ok. + +-spec send_to_cache + ( + bm_character_turn_update:type(), + bm_character_turn_request:type() + ) + -> 'ok'. +send_to_cache (Update, Request) -> + PlayerID = bm_character_turn_request:get_player_id(Request), + BattleID = bm_character_turn_request:get_battle_id(Request), + Data = bm_character_turn_update:get_data(Update), + Battle = bm_character_turn_data:get_battle(Data), + + sh_timed_cache:update(battle_db, PlayerID, BattleID, Battle), + + ok. + +-spec commit_update + ( + bm_character_turn_update:type(), + bm_character_turn_request:type() + ) + -> 'ok'. +commit_update (Update, Request) -> + send_to_database(Update, Request), + send_to_cache(Update, Request), + + ok. + +%%%% USER DISCONNECTION %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +-spec disconnect_user (bm_character_turn_request:type()) -> 'ok'. +disconnect_user (Request) -> + PlayerID = bm_character_turn_request:get_player_id(Request), + + bm_security:unlock_queries(PlayerID), + + ok. + +%%%% REPLY GENERATION %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +-spec generate_reply (bm_character_turn_update:type()) -> binary(). +generate_reply (Update) -> + NewTimelineItems = bm_character_turn_update:get_timeline(Update), + + TurnResultReply = bm_turn_results:generate(NewTimelineItems), + + jiffy:encode([TurnResultReply]). + +%%%% MAIN LOGIC %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +-spec handle (binary()) -> binary(). +handle (EncodedRequest) -> + Request = decode_request(EncodedRequest), + authenticate_user(Request), + Data = fetch_data(Request), + assert_user_permissions(Data, Request), + Update = update_data(Data, Request), + commit_update(Update, Request), + disconnect_user(Request), + generate_reply(Update). + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% EXPORTED FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +out(A) -> + { + content, + "application/json; charset=UTF-8", + handle(A#arg.clidata) + }. diff --git a/src/battlemap/src/query/load_state.erl b/src/battlemap/query/bm_load_state.erl index f905892..b580b9f 100644 --- a/src/battlemap/src/query/load_state.erl +++ b/src/battlemap/query/bm_load_state.erl @@ -1,15 +1,15 @@ --module(load_state). +-module(bm_load_state). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --include("../../include/yaws_api.hrl"). +-include("../../../include/yaws_api.hrl"). -record ( input, { - player_id :: player:id(), + player_id :: bm_player:id(), session_token :: binary(), battle_id :: binary() } @@ -19,7 +19,7 @@ ( query_state, { - battle :: battle:type() + battle :: bm_battle:type() } ). @@ -68,17 +68,20 @@ generate_reply (QueryState, Input) -> jiffy:encode ( [ - set_timeline:generate(battle:get_encoded_last_turns_effects(Battle)), - set_map:generate(battle:get_battlemap(Battle)) + bm_set_timeline:generate + ( + bm_battle:get_encoded_last_turns_effects(Battle) + ), + bm_set_map:generate(bm_battle:get_battlemap(Battle)) | array:sparse_to_list ( array:map ( fun (IX, Character) -> - add_char:generate(IX, Character, PlayerID) + bm_add_char:generate(IX, Character, PlayerID) end, - battle:get_characters(Battle) + bm_battle:get_characters(Battle) ) ) ] @@ -87,10 +90,14 @@ generate_reply (QueryState, Input) -> -spec handle (binary()) -> binary(). handle (Req) -> Input = parse_input(Req), - security:assert_identity(Input#input.player_id, Input#input.session_token), - security:lock_queries(Input#input.player_id), + bm_security:assert_identity + ( + Input#input.player_id, + Input#input.session_token + ), + bm_security:lock_queries(Input#input.player_id), QueryState = fetch_data(Input), - security:unlock_queries(Input#input.player_id), + bm_security:unlock_queries(Input#input.player_id), generate_reply(QueryState, Input). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% diff --git a/src/battlemap/src/reply/add_char.erl b/src/battlemap/reply/add_char.erl index 86b1e9c..86b1e9c 100644 --- a/src/battlemap/src/reply/add_char.erl +++ b/src/battlemap/reply/add_char.erl diff --git a/src/battlemap/src/reply/set_map.erl b/src/battlemap/reply/set_map.erl index 8518ac5..8518ac5 100644 --- a/src/battlemap/src/reply/set_map.erl +++ b/src/battlemap/reply/set_map.erl diff --git a/src/battlemap/src/reply/set_timeline.erl b/src/battlemap/reply/set_timeline.erl index bfe621a..bfe621a 100644 --- a/src/battlemap/src/reply/set_timeline.erl +++ b/src/battlemap/reply/set_timeline.erl diff --git a/src/battlemap/src/reply/turn_results.erl b/src/battlemap/reply/turn_results.erl index 0f3ff25..0f3ff25 100644 --- a/src/battlemap/src/reply/turn_results.erl +++ b/src/battlemap/reply/turn_results.erl diff --git a/src/battlemap/src/query/character_turn.erl b/src/battlemap/src/query/character_turn.erl deleted file mode 100644 index a10cda7..0000000 --- a/src/battlemap/src/query/character_turn.erl +++ /dev/null @@ -1,255 +0,0 @@ --module(character_turn). - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --include("../../include/yaws_api.hrl"). - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --export([out/1]). - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% LOCAL FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -%-spec send_to_database (list(database_diff:type()), character_turn_request:type()) -> 'ok'. - - -%%%% REQUEST DECODING %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --spec decode_request (binary()) -> character_turn_request:type(). -decode_request (BinaryRequest) -> - JSONMap = jiffy:decode(BinaryRequest, [return_maps]), - - character_turn_request:decode(JSONMap). - -%%%% USER AUTHENTICATION %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --spec authenticate_user (character_turn_request:type()) -> 'ok'. -authenticate_user (Request) -> - PlayerID = character_turn_request:get_player_id(Request), - SessionToken = character_turn_request:get_session_token(Request), - - security:assert_identity(PlayerID, SessionToken), - security:lock_queries(PlayerID), - - ok. - -%%%% MAIN LOGIC %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --spec fetch_data (character_turn_request:type()) -> character_turn_data:type(). -fetch_data (Request) -> - PlayerID = character_turn_request:get_player_id(Request), - BattleID = character_turn_request:get_battle_id(Request), - CharacterIX = - character_turn_request:get_character_ix(Request), - - Battle = timed_cache:fetch(battle_db, PlayerID, BattleID), - - character_turn_data:new(Battle, CharacterIX). - -%%%% ASSERTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --spec assert_user_is_current_player - ( - character_turn_data:type(), - character_turn_request:type() - ) -> 'ok'. -assert_user_is_current_player (Data, Request) -> - PlayerID = character_turn_request:get_player_id(Request), - Battle = character_turn_data:get_battle(Data), - CurrentPlayerTurn = battle:get_current_player_turn(Battle), - CurrentPlayerIX = player_turn:get_player_ix(CurrentPlayerTurn), - CurrentPlayer = battle:get_player(CurrentPlayerIX, Battle), - - true = (PlayerID == player:get_id(CurrentPlayer)), - - ok. - --spec assert_user_owns_played_character - ( - character_turn_data:type(), - character_turn_request:type() - ) -> 'ok'. -assert_user_owns_played_character (Data, Request) -> - PlayerID = character_turn_request:get_player_id(Request), - Character = character_turn_data:get_character(Data), - CharacterOwnerID = character:get_owner_id(Character), - - true = (PlayerID == CharacterOwnerID), - - ok. - --spec assert_character_can_be_played (character_turn_data:type()) -> 'ok'. -assert_character_can_be_played (Data) -> - Character = character_turn_data:get_character(Data), - - true = character:get_is_active(Character), - - ok. - --spec assert_user_permissions - ( - character_turn_data:type(), - character_turn_request:type() - ) -> 'ok'. -assert_user_permissions (Data, Request) -> - assert_user_is_current_player(Data, Request), - assert_user_owns_played_character(Data, Request), - assert_character_can_be_played(Data), - - ok. - -%%%% QUERY LOGIC HANDLING %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --spec finalize_character - ( - character_turn_update:type() - ) - -> character_turn_update:type(). -finalize_character (Update) -> - Data = character_turn_update:get_data(Update), - Character = character_turn_data:get_character(Data), - - DisabledCharacter = - character:set_is_active(false, Character), - - UpdatedData = - character_turn_data:set_character - ( - DisabledCharacter, - Data - ), - FinalizedData = character_turn_data:clean_battle(UpdatedData), - - character_turn_update:set_data(FinalizedData, Update). - --spec handle_actions - ( - character_turn_data:type(), - character_turn_request:type() - ) - -> character_turn_update:type(). -handle_actions (Data, Request) -> - Actions = character_turn_request:get_actions(Request), - - EmptyUpdate = character_turn_update:new(Data), - PostActionsUpdate = - lists:foldl(fun turn_actions:handle/2, EmptyUpdate, Actions), - - finalize_character(PostActionsUpdate). - --spec update_timeline - ( - character_turn_update:type() - ) - -> character_turn_update:type(). -update_timeline (Update) -> - NewTimelineElements = character_turn_update:get_timeline(Update), - Data = character_turn_update:get_data(Update), - Battle = character_turn_data:get_battle(Data), - PlayerTurn = battle:get_current_player_turn(Battle), - PlayerIX = player_turn:get_player_ix(PlayerTurn), - Player = battle:get_player(PlayerIX, Battle), - - UpdatedPlayer = player:add_to_timeline(NewTimelineElements, Player), - UpdatedBattle = battle:set_player(PlayerIX, UpdatedPlayer, Battle), - UpdatedData = character_turn_data:set_battle(UpdatedBattle, Data), - - character_turn_update:set_data(UpdatedData, Update). - --spec update_data - ( - character_turn_data:type(), - character_turn_request:type() - ) - -> character_turn_update:type(). -update_data (Data, Request) -> - PostActionsUpdate = handle_actions(Data, Request), - PostCharacterTurnUpdate = update_timeline(PostActionsUpdate), - - next_turn:update_if_needed(PostCharacterTurnUpdate). - -%%%% DATABASE UPDATES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --spec send_to_database - ( - character_turn_update:type(), - character_turn_request:type() - ) - -> 'ok'. -send_to_database (Update, Request) -> - PlayerID = character_turn_request:get_player_id(Request), - BattleID = character_turn_request:get_battle_id(Request), - Ops = character_turn_update:get_db(Update), - Query = db_query:new(battle_db, BattleID, {user, PlayerID}, Ops), - - % TODO: send queries to an actual DB... - - database_shim:commit(Query), - - ok. - --spec send_to_cache - ( - character_turn_update:type(), - character_turn_request:type() - ) - -> 'ok'. -send_to_cache (Update, Request) -> - PlayerID = character_turn_request:get_player_id(Request), - BattleID = character_turn_request:get_battle_id(Request), - Data = character_turn_update:get_data(Update), - Battle = character_turn_data:get_battle(Data), - - timed_cache:update(battle_db, PlayerID, BattleID, Battle), - - ok. - --spec commit_update - ( - character_turn_update:type(), - character_turn_request:type() - ) - -> 'ok'. -commit_update (Update, Request) -> - send_to_database(Update, Request), - send_to_cache(Update, Request), - - ok. - -%%%% USER DISCONNECTION %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --spec disconnect_user (character_turn_request:type()) -> 'ok'. -disconnect_user (Request) -> - PlayerID = character_turn_request:get_player_id(Request), - - security:unlock_queries(PlayerID), - - ok. - -%%%% REPLY GENERATION %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --spec generate_reply (character_turn_update:type()) -> binary(). -generate_reply (Update) -> - NewTimelineItems = character_turn_update:get_timeline(Update), - - TurnResultReply = turn_results:generate(NewTimelineItems), - - jiffy:encode([TurnResultReply]). - -%%%% MAIN LOGIC %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --spec handle (binary()) -> binary(). -handle (EncodedRequest) -> - Request = decode_request(EncodedRequest), - authenticate_user(Request), - Data = fetch_data(Request), - assert_user_permissions(Data, Request), - Update = update_data(Data, Request), - commit_update(Update, Request), - disconnect_user(Request), - generate_reply(Update). - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% EXPORTED FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -out(A) -> - { - content, - "application/json; charset=UTF-8", - handle(A#arg.clidata) - }. diff --git a/src/battlemap/src/struct/attack.erl b/src/battlemap/struct/bm_attack.erl index fed6a56..fe7d8b8 100644 --- a/src/battlemap/src/struct/attack.erl +++ b/src/battlemap/struct/bm_attack.erl @@ -1,4 +1,4 @@ --module(attack). +-module(bm_attack). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -47,15 +47,15 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -spec roll_precision ( - statistics:type(), - statistics:type() + bm_statistics:type(), + bm_statistics:type() ) -> precision(). roll_precision (AttackerStatistics, DefenderStatistics) -> - DefenderDodges = statistics:get_dodges(DefenderStatistics), - AttackerAccuracy = statistics:get_accuracy(AttackerStatistics), + DefenderDodges = bm_statistics:get_dodges(DefenderStatistics), + AttackerAccuracy = bm_statistics:get_accuracy(AttackerStatistics), MissChance = max(0, (DefenderDodges - AttackerAccuracy)), - case roll:percentage() of + case sh_roll:percentage() of X when (X =< MissChance) -> misses; X when (X =< (MissChance * 2)) -> grazes; _ -> hits @@ -63,30 +63,31 @@ roll_precision (AttackerStatistics, DefenderStatistics) -> -spec roll_damage ( - statistics:type(), - statistics:type() + bm_statistics:type(), + bm_statistics:type() ) -> {non_neg_integer(), boolean()}. roll_damage (AttackerStatistics, _DefenderStatistics) -> - {MinimumDamage, MaximumDamage} = statistics:get_damages(AttackerStatistics), + {MinimumDamage, MaximumDamage} = + bm_statistics:get_damages(AttackerStatistics), MaximumRoll = max(1, MaximumDamage - MinimumDamage), BaseDamage = MinimumDamage + (rand:uniform(MaximumRoll) - 1), - CriticalHitChance = statistics:get_critical_hits(AttackerStatistics), - case roll:percentage() of + CriticalHitChance = bm_statistics:get_critical_hits(AttackerStatistics), + case sh_roll:percentage() of X when (X =< CriticalHitChance) -> {(BaseDamage * 2), true}; _ -> {BaseDamage, false} end. --spec roll_parry (statistics:type()) -> boolean(). +-spec roll_parry (bm_statistics:type()) -> boolean(). roll_parry (DefenderStatistics) -> - DefenderParryChance = statistics:get_parries(DefenderStatistics), - (roll:percentage() =< DefenderParryChance). + DefenderParryChance = bm_statistics:get_parries(DefenderStatistics), + (sh_roll:percentage() =< DefenderParryChance). -spec effect_of_attack ( order(), - statistics:type(), - statistics:type(), + bm_statistics:type(), + bm_statistics:type(), boolean() ) -> type(). @@ -133,8 +134,8 @@ encode_precision (misses) -> <<"m">>. -spec get_description_of ( step(), - statistics:type(), - statistics:type() + bm_statistics:type(), + bm_statistics:type() ) -> maybe_type(). get_description_of @@ -150,9 +151,10 @@ get_description_of AttackerStatistics, DefenderStatistics ) -> - AttackerDoubleAttackChange = statistics:get_double_hits(AttackerStatistics), + AttackerDoubleAttackChange = + bm_statistics:get_double_hits(AttackerStatistics), - case roll:percentage() of + case sh_roll:percentage() of X when (X =< AttackerDoubleAttackChange) -> effect_of_attack ( @@ -244,15 +246,15 @@ when -spec get_sequence ( non_neg_integer(), - weapon:type(), - weapon:type() + bm_weapon:type(), + bm_weapon:type() ) -> list(step()). get_sequence (AttackRange, AttackerWeapon, DefenderWeapon) -> {AttackerDefenseRange, AttackerAttackRange} = - weapon:get_ranges(AttackerWeapon), + bm_weapon:get_ranges(AttackerWeapon), {DefenderDefenseRange, DefenderAttackRange} = - weapon:get_ranges(DefenderWeapon), + bm_weapon:get_ranges(DefenderWeapon), AttackerCanAttack = (AttackRange =< AttackerAttackRange), AttackerCanAttack = true, @@ -280,7 +282,6 @@ get_sequence (AttackRange, AttackerWeapon, DefenderWeapon) -> end. -spec encode (type()) -> {list(any())}. -% This shouldn't be a possibility. Types in this module are a mess... encode (Attack) -> Order = Attack#attack.order, Precision = Attack#attack.precision, diff --git a/src/battlemap/src/struct/battle.erl b/src/battlemap/struct/bm_battle.erl index 6a76975..08c4943 100644 --- a/src/battlemap/src/struct/battle.erl +++ b/src/battlemap/struct/bm_battle.erl @@ -1,4 +1,4 @@ --module(battle). +-module(bm_battle). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -10,10 +10,10 @@ battle, { id :: id(), - battlemap :: battlemap:type(), - characters :: array:array(character:type()), - players :: array:array(player:type()), - current_player_turn :: player_turn:type() + battlemap :: bm_battlemap:type(), + characters :: array:array(bm_character:type()), + players :: array:array(bm_player:type()), + current_player_turn :: bm_player_turn:type() } ). @@ -62,7 +62,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% get_all_timelines (Result, CurrentIndex, EndPoint, ArraySize, Players) -> Player = array:get(CurrentIndex, Players), - Timeline = player:get_timeline(Player), + Timeline = bm_player:get_timeline(Player), NextIndex = ((CurrentIndex + 1) rem ArraySize), NextResult = (Timeline ++ Result), case CurrentIndex of @@ -80,27 +80,27 @@ get_all_timelines (Result, CurrentIndex, EndPoint, ArraySize, Players) -> -spec get_id (type()) -> id(). get_id (Battle) -> Battle#battle.id. --spec get_battlemap (type()) -> battlemap:type(). +-spec get_battlemap (type()) -> bm_battlemap:type(). get_battlemap (Battle) -> Battle#battle.battlemap. --spec get_characters (type()) -> array:array(character:type()). +-spec get_characters (type()) -> array:array(bm_character:type()). get_characters (Battle) -> Battle#battle.characters. --spec get_character (non_neg_integer(), type()) -> character:type(). +-spec get_character (non_neg_integer(), type()) -> bm_character:type(). get_character (IX, Battle) -> array:get(IX, Battle#battle.characters). --spec get_players (type()) -> array:array(player:type()). +-spec get_players (type()) -> array:array(bm_player:type()). get_players (Battle) -> Battle#battle.players. --spec get_player (non_neg_integer(), type()) -> player:type(). +-spec get_player (non_neg_integer(), type()) -> bm_player:type(). get_player (IX, Battle) -> array:get(IX, Battle#battle.players). --spec get_current_player_turn (type()) -> player_turn:type(). +-spec get_current_player_turn (type()) -> bm_player_turn:type(). get_current_player_turn (Battle) -> Battle#battle.current_player_turn. @@ -108,27 +108,27 @@ get_current_player_turn (Battle) -> get_encoded_last_turns_effects (Battle) -> CurrentPlayerTurn = Battle#battle.current_player_turn, Players = Battle#battle.players, - CurrentPlayerIX = player_turn:get_player_ix(CurrentPlayerTurn), + CurrentPlayerIX = bm_player_turn:get_player_ix(CurrentPlayerTurn), PlayersCount = array:size(Players), StartingPoint = ((CurrentPlayerIX + 1) rem PlayersCount), get_all_timelines([], StartingPoint, CurrentPlayerIX, PlayersCount, Players). --spec set_battlemap (battlemap:type(), type()) -> type(). +-spec set_battlemap (bm_battlemap:type(), type()) -> type(). set_battlemap (Battlemap, Battle) -> Battle#battle { battlemap = Battlemap }. --spec set_characters (array:array(character:type()), type()) -> type(). +-spec set_characters (array:array(bm_character:type()), type()) -> type(). set_characters (Characters, Battle) -> Battle#battle { characters = Characters }. --spec set_character (non_neg_integer(), character:type(), type()) -> type(). +-spec set_character (non_neg_integer(), bm_character:type(), type()) -> type(). set_character (IX, Character, Battle) -> Battle#battle { @@ -141,14 +141,14 @@ set_character (IX, Character, Battle) -> ) }. --spec set_players (array:array(player:type()), type()) -> type(). +-spec set_players (array:array(bm_player:type()), type()) -> type(). set_players (Players, Battle) -> Battle#battle { players = Players }. --spec set_player (non_neg_integer(), player:type(), type()) -> type(). +-spec set_player (non_neg_integer(), bm_player:type(), type()) -> type(). set_player (IX, Player, Battle) -> Battle#battle { @@ -161,7 +161,7 @@ set_player (IX, Player, Battle) -> ) }. --spec set_current_player_turn (player_turn:type(), type()) -> type(). +-spec set_current_player_turn (bm_player_turn:type(), type()) -> type(). set_current_player_turn (PlayerTurn, Battle) -> Battle#battle { @@ -171,9 +171,9 @@ set_current_player_turn (PlayerTurn, Battle) -> -spec new ( id(), - list(player:type()), - battlemap:type(), - list(character:type()) + list(bm_player:type()), + bm_battlemap:type(), + list(bm_character:type()) ) -> type(). new (ID, PlayersAsList, Battlemap, CharactersAsList) -> @@ -183,7 +183,7 @@ new (ID, PlayersAsList, Battlemap, CharactersAsList) -> battlemap = Battlemap, characters = array:from_list(CharactersAsList), players = array:from_list(PlayersAsList), - current_player_turn = player_turn:new(0, 0) + current_player_turn = bm_player_turn:new(0, 0) }. diff --git a/src/battlemap/src/struct/battle_action.erl b/src/battlemap/struct/bm_battle_action.erl index 3cedfa7..abdc1c6 100644 --- a/src/battlemap/src/struct/battle_action.erl +++ b/src/battlemap/struct/bm_battle_action.erl @@ -1,4 +1,4 @@ --module(battle_action). +-module(bm_battle_action). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -7,7 +7,7 @@ ( move, { - path :: list(direction:enum()) + path :: list(bm_direction:enum()) } ). @@ -57,7 +57,7 @@ -spec decode_mov_action (map()) -> type(). decode_mov_action (JSONMap) -> PathInBinary = maps:get(<<"p">>, JSONMap), - Path = lists:map(fun direction:decode/1, PathInBinary), + Path = lists:map(fun bm_direction:decode/1, PathInBinary), #move { path = Path }. diff --git a/src/battlemap/src/struct/battlemap.erl b/src/battlemap/struct/bm_battlemap.erl index dc6bdc7..c3eabb0 100644 --- a/src/battlemap/src/struct/battlemap.erl +++ b/src/battlemap/struct/bm_battlemap.erl @@ -1,4 +1,4 @@ --module(battlemap). +-module(bm_battlemap). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -12,7 +12,7 @@ id :: id(), width :: integer(), height :: integer(), - tile_ids :: array:array(tile:id()) + tile_ids :: array:array(bm_tile:id()) } ). @@ -47,29 +47,29 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -spec generate_random_tile_ids ( - tile:id(), - list(tile:id()), + bm_tile:id(), + list(bm_tile:id()), non_neg_integer(), non_neg_integer(), non_neg_integer() ) - -> list(tile:id()). + -> list(bm_tile:id()). generate_random_tile_ids (_PreviousTileID, Result, _X, 0, _Width) -> Result; generate_random_tile_ids (PreviousTileID, Result, 0, Y, Width) -> generate_random_tile_ids(PreviousTileID, Result, Width, (Y - 1), Width); generate_random_tile_ids (PreviousTileID, Result, X, Y, Width) -> NewTile = - case roll:percentage() of + case sh_roll:percentage() of N when (N >= 10) -> PreviousTileID; - _ -> tile:random_id() + _ -> bm_tile:random_id() end, generate_random_tile_ids(NewTile, [NewTile|Result], (X - 1), Y, Width). -spec location_to_array_index ( non_neg_integer(), - location:type() + bm_location:type() ) -> ('error' | non_neg_integer()). location_to_array_index (ArrayWidth, {X, Y}) -> @@ -93,10 +93,10 @@ get_width (Battlemap) -> Battlemap#battlemap.width. -spec get_height (type()) -> integer(). get_height (Battlemap) -> Battlemap#battlemap.height. --spec get_tile_ids (type()) -> array:array(tile:id()). +-spec get_tile_ids (type()) -> array:array(bm_tile:id()). get_tile_ids (Battlemap) -> Battlemap#battlemap.tile_ids. --spec get_tile_id (location:type(), type()) -> tile:id(). +-spec get_tile_id (bm_location:type(), type()) -> bm_tile:id(). get_tile_id (Location, Battlemap) -> TileIX = location_to_array_index(Battlemap#battlemap.width, Location), array:get(TileIX, Battlemap#battlemap.tile_ids). @@ -109,7 +109,7 @@ get_tile_id (Location, Battlemap) -> ) -> type(). random (ID, Width, Height) -> - InitialTile = tile:random_id(), + InitialTile = bm_tile:random_id(), TileIDs = generate_random_tile_ids(InitialTile, [], Width, Height, Width), #battlemap diff --git a/src/battlemap/src/struct/character.erl b/src/battlemap/struct/bm_character.erl index 2792da5..e797b74 100644 --- a/src/battlemap/src/struct/character.erl +++ b/src/battlemap/struct/bm_character.erl @@ -1,4 +1,4 @@ --module(character). +-module(bm_character). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -10,13 +10,13 @@ character, { id :: id(), - owner_id :: player:id(), + owner_id :: bm_player:id(), name :: binary(), icon :: binary(), portrait :: binary(), - attributes :: attributes:type(), - statistics :: statistics:type(), - weapon_ids :: {weapon:id(), weapon:id()}, + attributes :: sh_attributes:type(), + statistics :: bm_statistics:type(), + weapon_ids :: {bm_weapon:id(), bm_weapon:id()}, location :: {non_neg_integer(), non_neg_integer()}, current_health :: non_neg_integer(), active :: boolean() @@ -102,7 +102,7 @@ find_random_location (BattlemapWidth, BattlemapHeight, ForbiddenLocations) -> -spec get_id (type()) -> id(). get_id (Char) -> Char#character.id. --spec get_owner_id (type()) -> player:id(). +-spec get_owner_id (type()) -> bm_player:id(). get_owner_id (Char) -> Char#character.owner_id. -spec get_name (type()) -> binary(). @@ -114,13 +114,13 @@ get_icon (Char) -> Char#character.icon. -spec get_portrait (type()) -> binary(). get_portrait (Char) -> Char#character.portrait. --spec get_attributes (type()) -> attributes:type(). +-spec get_attributes (type()) -> sh_attributes:type(). get_attributes (Char) -> Char#character.attributes. --spec get_weapon_ids (type()) -> {weapon:id(), weapon:id()}. +-spec get_weapon_ids (type()) -> {bm_weapon:id(), bm_weapon:id()}. get_weapon_ids (Char) -> Char#character.weapon_ids. --spec get_statistics (type()) -> statistics:type(). +-spec get_statistics (type()) -> bm_statistics:type(). get_statistics (Char) -> Char#character.statistics. -spec get_location (type()) -> {non_neg_integer(), non_neg_integer()}. @@ -171,7 +171,7 @@ set_is_active (Active, Char) -> -spec set_weapon_ids ( - {weapon:id(), weapon:id()}, + {bm_weapon:id(), bm_weapon:id()}, type() ) -> type(). @@ -183,7 +183,7 @@ set_weapon_ids (WeaponIDs, Char) -> -spec set_statistics ( - statistics:type(), + bm_statistics:type(), type() ) -> type(). @@ -197,7 +197,7 @@ set_statistics (Stats, Char) -> -spec random ( non_neg_integer(), - player:id(), + bm_player:id(), non_neg_integer(), non_neg_integer(), list({non_neg_integer(), non_neg_integer()}) @@ -206,9 +206,9 @@ set_statistics (Stats, Char) -> random (ID, OwnerID, BattlemapWidth, BattlemapHeight, ForbiddenLocations) -> Location = find_random_location(BattlemapWidth, BattlemapHeight, ForbiddenLocations), - WeaponIDs = {weapon:random_id(), weapon:random_id()}, - Attributes = attributes:random(), - Statistics = statistics:new(Attributes, WeaponIDs), + WeaponIDs = {bm_weapon:random_id(), bm_weapon:random_id()}, + Attributes = sh_attributes:random(), + Statistics = bm_statistics:new(Attributes, WeaponIDs), IDAsListString = integer_to_list(ID), IDAsBinaryString = list_to_binary(IDAsListString), @@ -223,7 +223,7 @@ random (ID, OwnerID, BattlemapWidth, BattlemapHeight, ForbiddenLocations) -> weapon_ids = WeaponIDs, statistics = Statistics, location = Location, - current_health = statistics:get_health(Statistics), + current_health = bm_statistics:get_health(Statistics), active = false }. diff --git a/src/battlemap/src/struct/character_turn_data.erl b/src/battlemap/struct/bm_character_turn_data.erl index 6ea744b..aaf7426 100644 --- a/src/battlemap/src/struct/character_turn_data.erl +++ b/src/battlemap/struct/bm_character_turn_data.erl @@ -1,4 +1,4 @@ --module(character_turn_data). +-module(bm_character_turn_data). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -8,8 +8,8 @@ type, { dirty :: boolean(), - battle :: battle:type(), - character :: character:type(), + battle :: bm_battle:type(), + character :: bm_character:type(), character_ix :: non_neg_integer() } ). @@ -50,9 +50,9 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% EXPORTED FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --spec new (battle:type(), non_neg_integer()) -> type(). +-spec new (bm_battle:type(), non_neg_integer()) -> type(). new (Battle, CharacterIX) -> - Character = battle:get_character(CharacterIX, Battle), + Character = bm_battle:get_character(CharacterIX, Battle), #type { @@ -65,20 +65,20 @@ new (Battle, CharacterIX) -> -spec get_battle_is_dirty (type()) -> boolean(). get_battle_is_dirty (Data) -> Data#type.dirty. --spec get_battle (type()) -> battle:type(). +-spec get_battle (type()) -> bm_battle:type(). get_battle (Data) -> Data#type.battle. --spec get_character (type()) -> character:type(). +-spec get_character (type()) -> bm_character:type(). get_character (Data) -> Data#type.character. -spec get_character_ix (type()) -> non_neg_integer(). get_character_ix (Data) -> Data#type.character_ix. --spec set_battle (battle:type(), type()) -> type(). +-spec set_battle (bm_battle:type(), type()) -> type(). set_battle (Battle, Data) -> Data#type{ battle = Battle }. --spec set_character (character:type(), type()) -> type(). +-spec set_character (bm_character:type(), type()) -> type(). set_character (Character, Data) -> Data#type { @@ -92,7 +92,7 @@ clean_battle (Data) -> { dirty = false, battle = - battle:set_character + bm_battle:set_character ( Data#type.character_ix, Data#type.character, diff --git a/src/battlemap/src/struct/character_turn_request.erl b/src/battlemap/struct/bm_character_turn_request.erl index ca8f44f..d141d7e 100644 --- a/src/battlemap/src/struct/character_turn_request.erl +++ b/src/battlemap/struct/bm_character_turn_request.erl @@ -1,4 +1,4 @@ --module(character_turn_request). +-module(bm_character_turn_request). -define(PLAYER_ID_FIELD, <<"pid">>). -define(SESSION_TOKEN_FIELD, <<"stk">>). @@ -13,11 +13,11 @@ ( type, { - player_id :: player:id(), + player_id :: bm_player:id(), session_token :: binary(), battle_id :: binary(), character_ix :: non_neg_integer(), - actions :: list(battle_action:type()) + actions :: list(bm_battle_action:type()) } ). @@ -57,7 +57,7 @@ decode (Map) -> CharacterIX = binary_to_integer(maps:get(?CHAR_IX_FIELD, Map)), EncodedActions = maps:get(?ACTIONS_FIELD, Map), - Actions = lists:map(fun battle_action:decode/1, EncodedActions), + Actions = lists:map(fun bm_battle_action:decode/1, EncodedActions), #type { @@ -80,5 +80,5 @@ get_battle_id (Request) -> Request#type.battle_id. -spec get_character_ix (type()) -> non_neg_integer(). get_character_ix (Request) -> Request#type.character_ix. --spec get_actions (type()) -> list(battle_action:type()). +-spec get_actions (type()) -> list(bm_battle_action:type()). get_actions (Request) -> Request#type.actions. diff --git a/src/battlemap/src/struct/character_turn_update.erl b/src/battlemap/struct/bm_character_turn_update.erl index 07cb562..078075c 100644 --- a/src/battlemap/src/struct/character_turn_update.erl +++ b/src/battlemap/struct/bm_character_turn_update.erl @@ -1,4 +1,4 @@ --module(character_turn_update). +-module(bm_character_turn_update). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -7,9 +7,9 @@ ( type, { - data :: character_turn_data:type(), + data :: bm_character_turn_data:type(), timeline :: list(any()), - db :: list(db_query:op()) + db :: list(sh_db_query:op()) } ). @@ -42,7 +42,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% EXPORTED FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --spec new (character_turn_data:type()) -> type(). +-spec new (bm_character_turn_data:type()) -> type(). new (Data) -> #type { @@ -51,23 +51,23 @@ new (Data) -> db = [] }. --spec get_data (type()) -> character_turn_data:type(). +-spec get_data (type()) -> bm_character_turn_data:type(). get_data (Update) -> Update#type.data. -spec get_timeline (type()) -> list(any()). get_timeline (Update) -> Update#type.timeline. --spec get_db (type()) -> list(db_query:op()). +-spec get_db (type()) -> list(sh_db_query:op()). get_db (Update) -> Update#type.db. --spec set_data (character_turn_data:type(), type()) -> type(). +-spec set_data (bm_character_turn_data:type(), type()) -> type(). set_data (Data, Update) -> Update#type{ data = Data}. --spec add_to_timeline (turn_result:type(), type()) -> type(). +-spec add_to_timeline (bm_turn_result:type(), type()) -> type(). add_to_timeline (Item, Update) -> - Update#type{ timeline = [turn_result:encode(Item)|Update#type.timeline] }. + Update#type{ timeline = [bm_turn_result:encode(Item)|Update#type.timeline] }. --spec add_to_db (db_query:op(), type()) -> type(). +-spec add_to_db (sh_db_query:op(), type()) -> type(). add_to_db (Item, Update) -> Update#type{ db = [Item|Update#type.db] }. diff --git a/src/battlemap/src/struct/direction.erl b/src/battlemap/struct/bm_direction.erl index be43a13..2da3936 100644 --- a/src/battlemap/src/struct/direction.erl +++ b/src/battlemap/struct/bm_direction.erl @@ -1,4 +1,4 @@ --module(direction). +-module(bm_direction). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% diff --git a/src/battlemap/src/struct/location.erl b/src/battlemap/struct/bm_location.erl index e54584b..056d10c 100644 --- a/src/battlemap/src/struct/location.erl +++ b/src/battlemap/struct/bm_location.erl @@ -1,4 +1,4 @@ --module(location). +-module(bm_location). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -44,7 +44,7 @@ validate ({X, Y}) -> -spec get_nowhere () -> type(). get_nowhere () -> nowhere. --spec apply_direction (direction:enum(), type()) -> type(). +-spec apply_direction (bm_direction:enum(), type()) -> type(). apply_direction (left, {X, Y}) -> validate({(X - 1), Y}); apply_direction (right, {X, Y}) -> diff --git a/src/battlemap/src/struct/player.erl b/src/battlemap/struct/bm_player.erl index 4cd073e..3f14a6f 100644 --- a/src/battlemap/src/struct/player.erl +++ b/src/battlemap/struct/bm_player.erl @@ -1,4 +1,4 @@ --module(player). +-module(bm_player). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% diff --git a/src/battlemap/src/struct/player_turn.erl b/src/battlemap/struct/bm_player_turn.erl index a558bfc..5f2c074 100644 --- a/src/battlemap/src/struct/player_turn.erl +++ b/src/battlemap/struct/bm_player_turn.erl @@ -1,4 +1,4 @@ --module(player_turn). +-module(bm_player_turn). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% diff --git a/src/battlemap/src/struct/tile.erl b/src/battlemap/struct/bm_tile.erl index a2e04ee..c1dd448 100644 --- a/src/battlemap/src/struct/tile.erl +++ b/src/battlemap/struct/bm_tile.erl @@ -1,4 +1,4 @@ --module(tile). +-module(bm_tile). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -44,4 +44,4 @@ get_cost (N) -> -spec random_id () -> id(). random_id () -> - roll:between(0, 15). + sh_roll:between(0, 15). diff --git a/src/battlemap/src/struct/turn_result.erl b/src/battlemap/struct/bm_turn_result.erl index 42a3a18..c3440bd 100644 --- a/src/battlemap/src/struct/turn_result.erl +++ b/src/battlemap/struct/bm_turn_result.erl @@ -1,4 +1,4 @@ --module(turn_result). +-module(bm_turn_result). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -8,7 +8,7 @@ ( switched_weapon, { - character_ix :: character:id() + character_ix :: bm_character:id() } ). @@ -16,9 +16,9 @@ ( moved, { - character_ix :: character:id(), - path :: list(direction:enum()), - new_location :: location:type() + character_ix :: bm_character:id(), + path :: list(bm_direction:enum()), + new_location :: bm_location:type() } ). @@ -26,9 +26,9 @@ ( attacked, { - attacker_ix :: character:id(), - defender_ix :: character:id(), - sequence :: list(attack:type()) + attacker_ix :: bm_character:id(), + defender_ix :: bm_character:id(), + sequence :: list(bm_attack:type()) } ). @@ -62,15 +62,15 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% EXPORTED FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --spec new_character_switched_weapons (character:id()) -> type(). +-spec new_character_switched_weapons (bm_character:id()) -> type(). new_character_switched_weapons (CharacterIX) -> #switched_weapon { character_ix = CharacterIX }. -spec new_character_moved ( - character:id(), - list(direction:enum()), - location:type() + bm_character:id(), + list(bm_direction:enum()), + bm_location:type() ) -> type(). new_character_moved (CharacterIX, Path, NewLocation) -> @@ -83,9 +83,9 @@ new_character_moved (CharacterIX, Path, NewLocation) -> -spec new_character_attacked ( - character:id(), - character:id(), - list(attack:type()) + bm_character:id(), + bm_character:id(), + list(bm_attack:type()) ) -> type(). new_character_attacked (AttackerIX, DefenderIX, AttackSequence) -> @@ -111,8 +111,8 @@ encode (TurnResult) when is_record(TurnResult, moved) -> Path = TurnResult#moved.path, NewLocation = TurnResult#moved.new_location, - EncodedPath = lists:map(fun direction:encode/1, Path), - EncodedNewLocation = location:encode(NewLocation), + EncodedPath = lists:map(fun bm_direction:encode/1, Path), + EncodedNewLocation = bm_location:encode(NewLocation), { [ @@ -127,7 +127,7 @@ encode (TurnResult) when is_record(TurnResult, attacked) -> DefenderIX = TurnResult#attacked.defender_ix, Sequence = TurnResult#attacked.sequence, - EncodedSequence = lists:map(fun attack:encode/1, Sequence), + EncodedSequence = lists:map(fun bm_attack:encode/1, Sequence), { [ diff --git a/src/battlemap/src/struct/weapon.erl b/src/battlemap/struct/bm_weapon.erl index 7d3c874..6c05799 100644 --- a/src/battlemap/src/struct/weapon.erl +++ b/src/battlemap/struct/bm_weapon.erl @@ -1,4 +1,4 @@ --module(weapon). +-module(bm_weapon). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -334,28 +334,27 @@ from_id (24) -> }. -spec random_id () -> id(). -random_id () -> roll:between(0, 24). +random_id () -> sh_roll:between(0, 24). -spec apply_to_attributes ( - attributes:type(), - weapon:type() + sh_attributes:type(), + bm_weapon:type() ) -> attributes:type(). apply_to_attributes (Attributes, Weapon) -> - Dexterity = attributes:get_dexterity(Attributes), - Speed = attributes:get_speed(Attributes), + Dexterity = sh_attributes:get_dexterity(Attributes), + Speed = sh_attributes:get_speed(Attributes), RangeModifier = Weapon#weapon.range_mod, DamageModifier = Weapon#weapon.damage_mod, WithRangeModifier = case RangeModifier of long -> - attributes:set_dexterity(max(0, (Dexterity - 20)), Attributes); + sh_attributes:set_dexterity(max(0, (Dexterity - 20)), Attributes); _ -> Attributes end, case DamageModifier of - heavy -> - attributes:set_speed(max(0, (Speed - 20)), WithRangeModifier); + heavy -> sh_attributes:set_speed(max(0, (Speed - 20)), WithRangeModifier); _ -> WithRangeModifier end. diff --git a/src/battlemap/src/util/array_util.erl b/src/battlemap/util/array_util.erl index 418d9ce..418d9ce 100644 --- a/src/battlemap/src/util/array_util.erl +++ b/src/battlemap/util/array_util.erl diff --git a/src/db/Makefile b/src/db/Makefile deleted file mode 100644 index 206a332..0000000 --- a/src/db/Makefile +++ /dev/null @@ -1,71 +0,0 @@ -################################################################################ -## CONFIG ###################################################################### -################################################################################ -MODULE_NAME ?= $ $(shell basename ${CURDIR}) -MODULE_PORT ?= 8002 - -DIALYZER_PLT_FILE ?= tacticians-server.plt - -## Main Directories -SRC_DIR ?= ${CURDIR}/src -CONF_DIR ?= ${CURDIR}/conf - -#### Optional Dirs -BIN_DIR ?= ${CURDIR}/ebin -INCLUDE_DIR ?= ${CURDIR}/include - -## Binaries -ERLC ?= erlc -ERLC_OPTS ?= -ERL ?= erl -ERL_OPTS ?= \ - -connect_all false \ - -name db_node \ - -pa $(BIN_DIR) \ - -run db_node start - -DIALYZER ?= dialyzer - -################################################################################ -## MAKEFILE MAGIC ############################################################## -################################################################################ -OPTIONAL_DIRS = $(BIN_DIR) $(INCLUDE_DIR) - -################################################################################ -## SANITY CHECKS ############################################################### -################################################################################ -DIALYZER_PLT_FILE ?= tacticians-server.plt - -## Main Directories -SRC_DIR ?= src -CONF_DIR ?= conf - -################################################################################ -## INCLUDES #################################################################### -################################################################################ -main_target: all - -include ${CURDIR}/mk/debug.mk -include ${CURDIR}/mk/erlang.mk -include ${CURDIR}/mk/preprocessor.mk - -################################################################################ -## TARGET RULES ################################################################ -################################################################################ -all: build - -debug: debug_run - -build: $(REQUIRED_HEADERS) $(PREPROCESSOR_RESULT) $(ERLANG_RESULT) - -run: - $(ERL) $(ERL_OPTS) - -clean: - rm -rf $(PREPROCESSOR_RESULT) $(ERLANG_RESULT) - -################################################################################ -## INTERNAL RULES ############################################################## -################################################################################ -$(OPTIONAL_DIRS): %: - mkdir -p $@ diff --git a/src/db/src/db_node.erl b/src/db/db_node.erl index be295c6..be295c6 100644 --- a/src/db/src/db_node.erl +++ b/src/db/db_node.erl diff --git a/src/db/src/logic/storage_access.erl b/src/db/logic/storage_access.erl index 437294f..437294f 100644 --- a/src/db/src/logic/storage_access.erl +++ b/src/db/logic/storage_access.erl diff --git a/src/db/mk/debug.mk b/src/db/mk/debug.mk deleted file mode 100644 index bd93669..0000000 --- a/src/db/mk/debug.mk +++ /dev/null @@ -1,40 +0,0 @@ -################################################################################ -## CONFIG ###################################################################### -################################################################################ -DIALYZER_PLT_FILE ?= tacticians-server.plt -DIALYZER ?= dialyzer - -################################################################################ -## MAKEFILE MAGIC ############################################################## -################################################################################ -SRC_FILES ?= $(wildcard $(SRC_DIR)/*.erl $(SRC_DIR)/*/*.erl) - -################################################################################ -## SANITY CHECKS ############################################################### -################################################################################ - -################################################################################ -## TARGET RULES ################################################################ -################################################################################ -DEBUG_RESULT = $(DIALYZER_PLT_FILE) - -debug_rebuild: - $(MAKE) clean - $(MAKE) ERLC_OPTS=+debug_info - -################################################################################ -## INTERNAL RULES ############################################################## -################################################################################ -ifeq ($(wildcard $(DIALYZER_PLT_FILE)),) -debug_run: - $(DIALYZER) --build_plt --apps erts kernel stdlib --output_plt \ - $(DIALYZER_PLT_FILE) - $(MAKE) debug_rebuild - $(DIALYZER) --add_to_plt --plt $(DIALYZER_PLT_FILE) -r $(BIN_DIR) -else -debug_run: - $(MAKE) debug_rebuild - $(DIALYZER) --check_plt --plt $(DIALYZER_PLT_FILE) - $(DIALYZER) --get_warnings $(SRC_DIR)/*.erl $(SRC_DIR)/*/*.erl \ - --src --plt $(DIALYZER_PLT_FILE) -endif diff --git a/src/db/mk/erlang.mk b/src/db/mk/erlang.mk deleted file mode 100644 index 9150f63..0000000 --- a/src/db/mk/erlang.mk +++ /dev/null @@ -1,28 +0,0 @@ -################################################################################ -## CONFIG ###################################################################### -################################################################################ -ERLC ?= erlc -ERLC_OPTS ?= - -################################################################################ -## MAKEFILE MAGIC ############################################################## -################################################################################ -SRC_FILES ?= $(wildcard $(SRC_DIR)/*.erl $(SRC_DIR)/*/*.erl) -BIN_FILES = \ - $(patsubst %.erl,$(BIN_DIR)/%.beam,$(notdir $(SRC_FILES))) - -################################################################################ -## SANITY CHECKS ############################################################### -################################################################################ - -################################################################################ -## TARGET RULES ################################################################ -################################################################################ -ERLANG_RESULT = $(BIN_DIR) $(BIN_FILES) - -################################################################################ -## INTERNAL RULES ############################################################## -################################################################################ -.SECONDEXPANSION: -$(BIN_FILES): $(BIN_DIR)/%.beam : $$(wildcard $(SRC_DIR)/*/%.erl $(SRC_DIR)/%.erl) - $(ERLC) $(ERLC_OPTS) -o $(BIN_DIR) $< diff --git a/src/db/mk/preprocessor.mk b/src/db/mk/preprocessor.mk deleted file mode 100644 index 74f66ba..0000000 --- a/src/db/mk/preprocessor.mk +++ /dev/null @@ -1,34 +0,0 @@ -################################################################################ -## CONFIG ###################################################################### -################################################################################ -CONFIG_FILE ?= ${CURDIR}/module.conf - -################################################################################ -## MAKEFILE MAGIC ############################################################## -################################################################################ -PREPROCESSOR_FILES = $(shell find ${CURDIR} -name "*.m4") -PREPROCESSED_FILES = $(patsubst %.m4,%,$(PREPROCESSOR_FILES)) - -MAKEFILE_TO_M4 = \ - --define=__MAKEFILE_MODULE_NAME=$(MODULE_NAME) \ - --define=__MAKEFILE_MODULE_PORT=$(MODULE_PORT) \ - --define=__MAKEFILE_BIN_DIR=$(BIN_DIR) \ - --define=__MAKEFILE_INCLUDE_DIR=$(INCLUDE_DIR) - -################################################################################ -## SANITY CHECKS ############################################################### -################################################################################ -ifeq ($(wildcard $(CONFIG_FILE)),) -$(error "Missing CONFIG_FILE ($(CONFIG_FILE)).") -endif - -################################################################################ -## TARGET RULES ################################################################ -################################################################################ -PREPROCESSOR_RESULT = $(PREPROCESSED_FILES) - -################################################################################ -## INTERNAL RULES ############################################################## -################################################################################ -$(PREPROCESSED_FILES): %: $(CONFIG_FILE) %.m4 - m4 -P $^ > $@ diff --git a/src/db/module.conf b/src/db/module.conf deleted file mode 100644 index 08714a1..0000000 --- a/src/db/module.conf +++ /dev/null @@ -1,6 +0,0 @@ -m4_define(`__MODULE_NAME', `__MAKEFILE_MODULE_NAME')m4_dnl -m4_define(`__MODULE_PORT', `__MAKEFILE_MODULE_PORT')m4_dnl -m4_dnl -m4_define(`__MODULE_BIN_DIR', `__MAKEFILE_BIN_DIR')m4_dnl -m4_define(`__MODULE_INCLUDE_DIR', `__MAKEFILE_INCLUDE_DIR')m4_dnl -m4_dnl diff --git a/src/db/src/struct/db_model.erl b/src/db/struct/db_model.erl index 1b21629..1b21629 100644 --- a/src/db/src/struct/db_model.erl +++ b/src/db/struct/db_model.erl diff --git a/src/db/src/struct/db_query.erl b/src/db/struct/db_query.erl index f8ad310..9a86f98 100644 --- a/src/db/src/struct/db_query.erl +++ b/src/db/struct/db_query.erl @@ -3,7 +3,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --include("../../include/db_query.hrl"). +-include("../../shared/include/db_query.hrl"). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% EXPORTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -20,7 +20,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% LOCAL FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --spec get_user (db_query()) -> db_user:user(). +-spec get_user (db_query()) -> sh_db_user:user(). get_user (#db_query{ user = Result }) -> Result. -spec apply_update_indexed (#update_indexed{}, any()) -> any(). @@ -82,7 +82,7 @@ apply_master_op_to (MOp, Elem) when is_record(MOp, set_val) -> db_item:set_value(NewVal, Elem); apply_master_op_to (MOp, Elem) -> - OldValue = db_item:get_value(Elem), + OldValue = sh_db_item:get_value(Elem), NewValue = apply_op_to(MOp, OldValue), db_item:set_value(NewValue, Elem). @@ -103,7 +103,12 @@ get_entry_id (#db_query{ id = Result }) -> Result. ) -> ({'ok', db_item:type()} | 'error'). apply_to (DBQuery, DBItem) -> - true = db_user:can_access(db_item:get_permission(DBItem), get_user(DBQuery)), + true = + sh_db_user:can_access + ( + sh_db_item:get_permission(DBItem), + get_user(DBQuery) + ), MOps = DBQuery#db_query.ops, {ok, lists:foldl(fun apply_master_op_to/2, DBItem, MOps)}. diff --git a/src/db/include/db_item.hrl b/src/shared/include/db_item.hrl index 86d5863..86d5863 100644 --- a/src/db/include/db_item.hrl +++ b/src/shared/include/db_item.hrl diff --git a/src/db/include/db_query.hrl b/src/shared/include/db_query.hrl index 7e5a5b0..7e5a5b0 100644 --- a/src/db/include/db_query.hrl +++ b/src/shared/include/db_query.hrl diff --git a/src/db/include/db_user.hrl b/src/shared/include/db_user.hrl index c5b033e..c5b033e 100644 --- a/src/db/include/db_user.hrl +++ b/src/shared/include/db_user.hrl diff --git a/src/battlemap/src/shim/database_shim.erl b/src/shared/io/sh_database.erl index c64105d..a65b784 100644 --- a/src/battlemap/src/shim/database_shim.erl +++ b/src/shared/io/sh_database.erl @@ -1,4 +1,4 @@ --module(database_shim). +-module(sh_database). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -28,11 +28,11 @@ get_db_node () -> non_neg_integer(), non_neg_integer(), non_neg_integer(), - battlemap:type(), - list(location:type()), - list(character:type()) + bm_battlemap:type(), + list(bm_location:type()), + list(bm_character:type()) ) - -> list(character:type()). + -> list(bm_character:type()). generate_random_characters ( 0, @@ -75,17 +75,17 @@ generate_random_characters Result ) -> NewCharacter = - character:random + bm_character:random ( TotalCharacterCount, list_to_binary(integer_to_list(MaxPlayerID)), - battlemap:get_width(Battlemap), - battlemap:get_height(Battlemap), + bm_battlemap:get_width(Battlemap), + bm_battlemap:get_height(Battlemap), ForbiddenLocations ), Character = case MaxPlayerID of - 0 -> character:set_is_active(true, NewCharacter); + 0 -> bm_character:set_is_active(true, NewCharacter); _ -> NewCharacter end, @@ -96,7 +96,7 @@ generate_random_characters CharactersPerPlayer, (TotalCharacterCount + 1), Battlemap, - [character:get_location(Character)|ForbiddenLocations], + [bm_character:get_location(Character)|ForbiddenLocations], [Character|Result] ). @@ -105,12 +105,12 @@ generate_random_characters %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -spec generate_db () -> 'ok'. generate_db () -> - BattlemapWidth = roll:between(16, 64), - BattlemapHeight = roll:between(16, 64), - Battlemap = battlemap:random(0, BattlemapWidth, BattlemapHeight), + BattlemapWidth = sh_roll:between(16, 64), + BattlemapHeight = sh_roll:between(16, 64), + Battlemap = bm_battlemap:random(0, BattlemapWidth, BattlemapHeight), Characters = generate_random_characters(1, 8, 8, 0, Battlemap, [], []), - PlayersAsList = [player:new(<<"0">>), player:new(<<"1">>)], - Battle = battle:new(<<"0">>, PlayersAsList, Battlemap, Characters), + PlayersAsList = [bm_player:new(<<"0">>), bm_player:new(<<"1">>)], + Battle = bm_battle:new(<<"0">>, PlayersAsList, Battlemap, Characters), {atomic, ok} = rpc:call diff --git a/src/battlemap/src/io/timed_cache.erl b/src/shared/io/sh_timed_cache.erl index 52b98d6..1839992 100644 --- a/src/battlemap/src/io/timed_cache.erl +++ b/src/shared/io/sh_timed_cache.erl @@ -1,4 +1,4 @@ --module(timed_cache). +-module(sh_timed_cache). -behavior(gen_server). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -37,8 +37,8 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -spec add_to_cache (atom(), any(), any()) -> any(). add_to_cache (DB, Owner, ObjectID) -> - {ok, TimerPID} = gen_server:start(?MODULE, {DB, {Owner, ObjectID}}, []), - {ok, Data} = database_shim:fetch(DB, ObjectID), + {ok, TimerPID} = sh_gen_server:start(?MODULE, {DB, {Owner, ObjectID}}, []), + {ok, Data} = sh_database:fetch(DB, ObjectID), ets:insert(DB, {{Owner, ObjectID}, TimerPID, Data}), Data. @@ -54,17 +54,17 @@ add_update_to_cache (DB, Owner, ObjectID, Data) -> %%%% 'gen_server' functions init ({DB, ObjectID}) -> io:format("~nCache entry added: ~p.~n", [{DB, ObjectID}]), - {ok, {DB, ObjectID}, timed_caches_manager:get_timeout()}. + {ok, {DB, ObjectID}, sh_timed_caches_manager:get_timeout()}. handle_call (invalidate, _, State) -> {stop, normal, State}; handle_call (ping, _, State) -> - {noreply, State, timed_caches_manager:get_timeout()}. + {noreply, State, sh_timed_caches_manager:get_timeout()}. handle_cast (invalidate, State) -> {stop, normal, State}; handle_cast (ping, State) -> - {noreply, State, timed_caches_manager:get_timeout()}. + {noreply, State, sh_timed_caches_manager:get_timeout()}. terminate (_, {DB, ObjectID}) -> io:format diff --git a/src/battlemap/src/io/timed_caches_manager.erl b/src/shared/io/sh_timed_caches_manager.erl index 5901964..7921552 100644 --- a/src/battlemap/src/io/timed_caches_manager.erl +++ b/src/shared/io/sh_timed_caches_manager.erl @@ -1,4 +1,4 @@ --module(timed_caches_manager). +-module(sh_timed_caches_manager). -behavior(gen_server). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% diff --git a/src/battlemap/src/struct/attributes.erl b/src/shared/struct/sh_attributes.erl index aca91d3..93dcfc6 100644 --- a/src/battlemap/src/struct/attributes.erl +++ b/src/shared/struct/sh_attributes.erl @@ -1,4 +1,4 @@ --module(attributes). +-module(sh_attributes). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -99,10 +99,10 @@ set_strength (Val, Att) -> Att#attributes{ strength = Val }. random () -> #attributes { - constitution = roll:percentage(), - dexterity = roll:percentage(), - intelligence = roll:percentage(), - mind = roll:percentage(), - speed = roll:percentage(), - strength = roll:percentage() + constitution = sh_roll:percentage(), + dexterity = sh_roll:percentage(), + intelligence = sh_roll:percentage(), + mind = sh_roll:percentage(), + speed = sh_roll:percentage(), + strength = sh_roll:percentage() }. diff --git a/src/db/src/struct/db_item.erl b/src/shared/struct/sh_db_item.erl index 0ce7630..e499634 100644 --- a/src/db/src/struct/db_item.erl +++ b/src/shared/struct/sh_db_item.erl @@ -1,9 +1,9 @@ --module(db_item). +-module(sh_db_item). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --include("../../include/db_item.hrl"). +-include("../include/db_item.hrl"). -type type() :: db_item(). diff --git a/src/battlemap/src/struct/db_query.erl b/src/shared/struct/sh_db_query.erl index 5d1e8d2..998568e 100644 --- a/src/battlemap/src/struct/db_query.erl +++ b/src/shared/struct/sh_db_query.erl @@ -1,9 +1,9 @@ --module(db_query). +-module(sh_db_query). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --include("../../../db/include/db_query.hrl"). +-include("../include/db_query.hrl"). -opaque op() :: db_query_op(). -opaque type() :: db_query(). @@ -30,7 +30,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% EXPORTED FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --spec new (atom(), any(), db_user:user(), list(op())) -> type(). +-spec new (atom(), any(), sh_db_user:user(), list(op())) -> type(). new (DBName, ObjectID, User, Ops) -> #db_query { diff --git a/src/db/src/struct/db_user.erl b/src/shared/struct/sh_db_user.erl index 983013c..40a46d3 100644 --- a/src/db/src/struct/db_user.erl +++ b/src/shared/struct/sh_db_user.erl @@ -1,9 +1,9 @@ --module(db_user). +-module(sh_db_user). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --include("../../include/db_user.hrl"). +-include("../include/db_user.hrl"). -type user() :: db_user(). -type permission() :: db_permission(). diff --git a/src/battlemap/src/struct/statistics.erl b/src/shared/struct/sh_statistics.erl index 3406d9a..7cf2b06 100644 --- a/src/battlemap/src/struct/statistics.erl +++ b/src/shared/struct/sh_statistics.erl @@ -1,4 +1,4 @@ --module(statistics). +-module(sh_statistics). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% TYPES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |