summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornsensfel <SpamShield0@noot-noot.org>2018-10-09 15:39:43 +0200
committernsensfel <SpamShield0@noot-noot.org>2018-10-09 15:39:43 +0200
commit80cf57bc91d25a043ed8c1de557ebe1ccbe17022 (patch)
treeb59e4a825748de5eb96382cbb9fbaa3c6d280e7f /src/special
parentf027695551d297b02f4bfa614d060d8f0e0d68d7 (diff)
Creates roster & inventory alongside player.
Diffstat (limited to 'src/special')
-rw-r--r--src/special/spe_player.erl34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/special/spe_player.erl b/src/special/spe_player.erl
index 50f7784..7560a2d 100644
--- a/src/special/spe_player.erl
+++ b/src/special/spe_player.erl
@@ -45,6 +45,34 @@ finalize_login (UsernameLC, EmailLC, PlayerID) ->
'ok'.
+-spec generate_inventory (binary()) -> binary().
+generate_inventory (PlayerID) ->
+ Inventory = shr_inventory:new(PlayerID),
+ {ok, InventoryID} =
+ shr_database:insert
+ (
+ inventory_db,
+ [{user, PlayerID}],
+ [{user, PlayerID}],
+ Inventory
+ ),
+
+ InventoryID.
+
+-spec generate_roster (binary()) -> binary().
+generate_roster (PlayerID) ->
+ Roster = rst_roster:new(PlayerID),
+ {ok, RosterID} =
+ shr_database:insert
+ (
+ roster_db,
+ [{user, PlayerID}],
+ [{user, PlayerID}],
+ Roster
+ ),
+
+ RosterID.
+
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% EXPORTED FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -59,11 +87,17 @@ generate (Username, Password, Email) ->
{ok, PlayerID} = shr_database:insert(player_db, janitor, janitor, Player),
+
shr_janitor:new(player_db, PlayerID),
+ InvID = generate_inventory(PlayerID),
+ RosterID = generate_roster(PlayerID),
+
PlayerUpdateQueryOps =
[
shr_db_query:set_field(shr_player:get_id_field(), PlayerID),
+ shr_db_query:set_field(shr_player:get_inventory_id_field(), InvID),
+ shr_db_query:set_field(shr_player:get_roster_id_field(), RosterID),
shr_db_query:set_read_permission(any),
shr_db_query:set_write_permission([{user, PlayerID}])
],