Skip to content
Snippets Groups Projects
Commit 6283c857 authored by DarkGod's avatar DarkGod
Browse files

GDPR update

parent 33bd9f72
No related branches found
No related tags found
No related merge requests found
...@@ -1044,7 +1044,8 @@ function _M:isDonator(s) ...@@ -1044,7 +1044,8 @@ function _M:isDonator(s)
end end
function _M:allowDLC(dlc) function _M:allowDLC(dlc)
if core.steam then if core.steam.checkDLC(dlc[2]) then return true end end -- if core.steam then if core.steam.checkDLC(dlc[2]) then return true end end
if self.auth and self.auth.dlcs and self.auth.dlcs[dlc[1]] then return true end -- if self.auth and self.auth.dlcs and self.auth.dlcs[dlc[1]] then return true end
return false -- return false
return true
end end
...@@ -81,7 +81,7 @@ chat.filter = {} ...@@ -81,7 +81,7 @@ chat.filter = {}
chat.ignores = {} chat.ignores = {}
addons = {} addons = {}
allow_online_events = true allow_online_events = true
disable_all_connectivity = false disable_all_connectivity = true
upload_charsheet = true upload_charsheet = true
upgrades { v1_0_5=true } upgrades { v1_0_5=true }
]] ]]
......
...@@ -222,6 +222,8 @@ A usual problem is shaders and thus should be your first target to disable.]], 7 ...@@ -222,6 +222,8 @@ A usual problem is shaders and thus should be your first target to disable.]], 7
if reboot_message then if reboot_message then
Dialog:simpleLongPopup("Message", reboot_message, 700) Dialog:simpleLongPopup("Message", reboot_message, 700)
end end
self:checkBootLoginRegister()
end end
function _M:grabAddons() function _M:grabAddons()
...@@ -540,39 +542,39 @@ function _M:onQuit() ...@@ -540,39 +542,39 @@ function _M:onQuit()
end, "Quit", "Continue") end, "Quit", "Continue")
end end
profile_help_text = [[#LIGHT_GREEN#T-Engine4#LAST# allows you to sync your player profile with the website #LIGHT_BLUE#https://te4.org/#LAST# profile_help_text = [[Welcome to #LIGHT_GREEN#Tales of Maj'Eyal#LAST#!
Before you can start dying in many innovative ways we need to ask you about online play.
This allows you to: This is a #{bold}#single player game#{normal}# but it also features many online features to enhance your gameplay and connect you to the community:
* Play from several computers without having to copy unlocks and achievements. * Play from several computers without having to copy unlocks and achievements.
* Keep track of your modules progression, kill count, ... * Talk ingame to other fellow players, ask for advice, share your most memorable moments...
* Talk ingame to other fellow players * Keep track of your kill count, deaths, most played classes...
* Cool statistics for each module to help sharpen your gameplay style * Cool statistics for to help sharpen your gameplay style
* Install official expansions and third-party addons directly from the game, hassle-free
* Access your purchaser / donator bonuses if you have bought the game or donated on https://te4.org/
* Help the game developers balance and refine the game * Help the game developers balance and refine the game
You will also have a user page on https://te4.org/ where you can show off your achievements to your friends. You will also have a user page on #LIGHT_BLUE#https://te4.org/#LAST# to show off to your friends.
This is all optional, you are not forced to use this feature at all, but the developers would thank you if you did as it will make balancing easier. This is all optional, you are not forced to use this feature at all, but the developer would thank you if you did as it will make balancing easier.]]
Online profile requires an internet connection, if not available it will wait and sync when it finds one.]]
function _M:checkFirstTime() function _M:checkFirstTime()
if not profile.generic.firstrun and not core.steam then if not profile.generic.firstrun and not core.steam then
profile:checkFirstRun() local d = require("mod.dialogs.FirstRun").new(profile_help_text)
local text = "Thanks for downloading T-Engine/ToME.\n\n"..profile_help_text local mm = self.dialogs[#self.dialogs]
Dialog:yesnocancelLongPopup("Welcome to T-Engine", text, 600, function(ret, cancel) self:unregisterDialog(mm)
if cancel then return end self.tooltip = nil
if not ret then self:registerDialog(d)
local dialogdef = {} end
dialogdef.fct = function(login) self:setPlayerLogin(login) end end
dialogdef.name = "login"
dialogdef.justlogin = true function _M:checkBootLoginRegister()
game:registerDialog(require('mod.dialogs.ProfileLogin').new(dialogdef, game.profile_help_text)) if __module_extra_info.boot_and_register then
else local dialogdef = {}
local dialogdef = {} dialogdef.fct = function(login) self:setPlayerLogin(login) end
dialogdef.fct = function(login) self:setPlayerLogin(login) end dialogdef.name = "creation"
dialogdef.name = "creation" dialogdef.justlogin = false
dialogdef.justlogin = false game:registerDialog(require('mod.dialogs.ProfileLogin').new(dialogdef, game.profile_help_text))
game:registerDialog(require('mod.dialogs.ProfileLogin').new(dialogdef, game.profile_help_text))
end
end, "Register new account", "Log in existing account", "Maybe later")
end end
end end
......
...@@ -27,7 +27,7 @@ local Textzone = require "engine.ui.Textzone" ...@@ -27,7 +27,7 @@ local Textzone = require "engine.ui.Textzone"
module(..., package.seeall, class.inherit(Dialog)) module(..., package.seeall, class.inherit(Dialog))
function _M:init(dialogdef, profile_help_text) function _M:init(dialogdef, profile_help_text)
Dialog.init(self, "Online profile "..dialogdef.name, 600, 400) Dialog.init(self, "Online profile "..dialogdef.name, math.min(800, game.w * 0.9), 400)
self.profile_help_text = profile_help_text self.profile_help_text = profile_help_text
self.dialogdef = dialogdef self.dialogdef = dialogdef
self.alpha = 230 self.alpha = 230
...@@ -65,8 +65,8 @@ function _M:init(dialogdef, profile_help_text) ...@@ -65,8 +65,8 @@ function _M:init(dialogdef, profile_help_text)
self.c_pass = Textbox.new{title="Password: ", size_title=pwa, text="", chars=30, max_len=20, hide=true, filter=pass_filter, fct=function(text) self:okclick() end} self.c_pass = Textbox.new{title="Password: ", size_title=pwa, text="", chars=30, max_len=20, hide=true, filter=pass_filter, fct=function(text) self:okclick() end}
self.c_pass2 = Textbox.new{title=pwa, text="", size_title=pwa, chars=30, max_len=20, hide=true, filter=pass_filter, fct=function(text) self:okclick() end} self.c_pass2 = Textbox.new{title=pwa, text="", size_title=pwa, chars=30, max_len=20, hide=true, filter=pass_filter, fct=function(text) self:okclick() end}
self.c_email = Textbox.new{title="Email: ", size_title=pwa, text="", chars=30, max_len=60, filter=pass_filter, fct=function(text) self:okclick() end} self.c_email = Textbox.new{title="Email: ", size_title=pwa, text="", chars=30, max_len=60, filter=pass_filter, fct=function(text) self:okclick() end}
self.c_news = Checkbox.new{title="Accept to receive #{bold}#very infrequent#{normal}# (a few per year) mails", default=false, fct=function() self:okclick() end} self.c_news = Checkbox.new{title="Accept to receive #{bold}#very infrequent#{normal}# (a few per year) mails about important game events from us.", default=false, fct=function() self:okclick() end}
self.c_news2 = Textzone.new{text="about important game events from us.", width=self.iw - 20, auto_height=true} self.c_age = Checkbox.new{title="You at least 16 years old, or have parental authorization to play the game.", default=false, fct=function() self:okclick() end}
local ok = require("engine.ui.Button").new{text="Create", fct=function() self:okclick() end} local ok = require("engine.ui.Button").new{text="Create", fct=function() self:okclick() end}
local privacy = require("engine.ui.Button").new{text="Privacy Policy (opens in browser)", fct=function() self:privacypolicy() end} local privacy = require("engine.ui.Button").new{text="Privacy Policy (opens in browser)", fct=function() self:privacypolicy() end}
local cancel = require("engine.ui.Button").new{text="Cancel", fct=function() self:cancelclick() end} local cancel = require("engine.ui.Button").new{text="Cancel", fct=function() self:cancelclick() end}
...@@ -78,7 +78,7 @@ function _M:init(dialogdef, profile_help_text) ...@@ -78,7 +78,7 @@ function _M:init(dialogdef, profile_help_text)
{left=0, top=self.c_desc.h+self.c_login.h+self.c_pass.h+5, ui=self.c_pass2}, {left=0, top=self.c_desc.h+self.c_login.h+self.c_pass.h+5, ui=self.c_pass2},
{left=0, top=self.c_desc.h+self.c_login.h+self.c_pass.h+self.c_pass2.h+10, ui=self.c_email}, {left=0, top=self.c_desc.h+self.c_login.h+self.c_pass.h+self.c_pass2.h+10, ui=self.c_email},
{left=0, top=self.c_desc.h+self.c_login.h+self.c_pass.h+self.c_pass2.h+self.c_email.h+10, ui=self.c_news}, {left=0, top=self.c_desc.h+self.c_login.h+self.c_pass.h+self.c_pass2.h+self.c_email.h+10, ui=self.c_news},
{left=0, top=self.c_desc.h+self.c_login.h+self.c_pass.h+self.c_pass2.h+self.c_email.h+self.c_news2.h+10, ui=self.c_news2}, {left=0, top=self.c_desc.h+self.c_login.h+self.c_pass.h+self.c_pass2.h+self.c_email.h+self.c_news.h+10, ui=self.c_age},
{left=0, bottom=0, ui=ok}, {left=0, bottom=0, ui=ok},
{right=0, bottom=0, ui=cancel}, {right=0, bottom=0, ui=cancel},
{hcenter=0, bottom=0, ui=privacy}, {hcenter=0, bottom=0, ui=privacy},
...@@ -110,6 +110,10 @@ function _M:okclick() ...@@ -110,6 +110,10 @@ function _M:okclick()
self:simplePopup("Email", "Your email seems invalid") self:simplePopup("Email", "Your email seems invalid")
return return
end end
if not self.c_age.checked then
self:simplePopup("Age Check", "You need to be 16 years old or more or to have parental authorization to play this game.")
return
end
game:unregisterDialog(self) game:unregisterDialog(self)
game:createProfile({create=self.c_email and true or false, login=self.c_login.text, pass=self.c_pass.text, email=self.c_email and self.c_email.text, news=self.c_news and self.c_news.checked}) game:createProfile({create=self.c_email and true or false, login=self.c_login.text, pass=self.c_pass.text, email=self.c_email and self.c_email.text, news=self.c_news and self.c_news.checked})
......
...@@ -613,11 +613,10 @@ This includes, but is not limited to: ...@@ -613,11 +613,10 @@ This includes, but is not limited to:
- Characters vault: You will not be able to upload any character to the online vault to show your glory - Characters vault: You will not be able to upload any character to the online vault to show your glory
- Item's Vault: You will not be able to access the online item's vault, this includes both storing and retrieving items. - Item's Vault: You will not be able to access the online item's vault, this includes both storing and retrieving items.
- Ingame chat: The ingame chat requires to connect to the server to talk to other players, this will not be possible. - Ingame chat: The ingame chat requires to connect to the server to talk to other players, this will not be possible.
- Donator benefits: The base game being free, the only way to give donators their bonuses fairly is to check their online profile. This will thus be disabled. - Purchaser / Donator benefits: The base game being free, the only way to give donators their bonuses fairly is to check their online profile. This will thus be disabled.
- Expansions & DLCs: Similarly any and all official expansions to the game works under the same principles as the donator benfits and will thus also be disabled.
- Easy addons downloading & installation: You will not be able to see ingame the list of available addons, nor to one-click install them. You may still do so manually. - Easy addons downloading & installation: You will not be able to see ingame the list of available addons, nor to one-click install them. You may still do so manually.
- Version checks: Addons will not be checked for new versions. - Version checks: Addons will not be checked for new versions.
- Discord: If you use Discord Rich Presence integration this will also be disabled byt this setting. - Discord: If you use Discord Rich Presence integration this will also be disabled by this setting.
- Ingame game news: The main menu will stop showing you info about new updates to the game. - Ingame game news: The main menu will stop showing you info about new updates to the game.
Note that this setting only affects the game itself. If you use the game launcher, whose sole purpose is to make sure the game is up to date, it will still do so. Note that this setting only affects the game itself. If you use the game launcher, whose sole purpose is to make sure the game is up to date, it will still do so.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment