This commit is contained in:
OTCv8 2020-07-16 16:59:46 +02:00
parent 760162d581
commit a65844f182
12 changed files with 543 additions and 355 deletions

View File

@ -303,9 +303,9 @@ function CharacterList.create(characters, account, otui)
status = tr(' (Suspended)') status = tr(' (Suspended)')
end end
if account.subStatus == SubscriptionStatus.Free then if account.subStatus == SubscriptionStatus.Free and account.premDays < 1 then
accountStatusLabel:setText(('%s%s'):format(tr('Free Account'), status)) accountStatusLabel:setText(('%s%s'):format(tr('Free Account'), status))
elseif account.subStatus == SubscriptionStatus.Premium then else
if account.premDays == 0 or account.premDays == 65535 then if account.premDays == 0 or account.premDays == 65535 then
accountStatusLabel:setText(('%s%s'):format(tr('Gratis Premium Account'), status)) accountStatusLabel:setText(('%s%s'):format(tr('Gratis Premium Account'), status))
else else

View File

@ -166,6 +166,16 @@ local function onTibia12HTTPResult(session, playdata)
end end
end end
-- proxies
if g_proxy then
g_proxy.clear()
if playdata["proxies"] then
for i, proxy in ipairs(playdata["proxies"]) do
g_proxy.addProxy(proxy["host"], tonumber(proxy["port"]), tonumber(proxy["priority"]))
end
end
end
g_game.setCustomProtocolVersion(0) g_game.setCustomProtocolVersion(0)
g_game.chooseRsa(G.host) g_game.chooseRsa(G.host)
g_game.setClientVersion(G.clientVersion) g_game.setClientVersion(G.clientVersion)
@ -414,7 +424,7 @@ function EnterGame.doLogin()
G.host = server_params[1] .. ":" .. server_params[2] .. ":" .. server_params[3] G.host = server_params[1] .. ":" .. server_params[2] .. ":" .. server_params[3]
G.clientVersion = tonumber(server_params[4]) G.clientVersion = tonumber(server_params[4])
elseif #server_params >= 3 then elseif #server_params >= 3 then
if tonumber(server_params[3]) == server_params[3] then if tostring(tonumber(server_params[3])) == server_params[3] then
G.host = server_params[1] .. ":" .. server_params[2] G.host = server_params[1] .. ":" .. server_params[2]
G.clientVersion = tonumber(server_params[3]) G.clientVersion = tonumber(server_params[3])
end end

View File

@ -1,19 +1,6 @@
function init() function init()
-- add manually your shaders from /data/shaders -- add manually your shaders from /data/shaders
g_shaders.createOutfitShader("default", "/shaders/outfit_default_vertex", "/shaders/outfit_default_fragment") g_shaders.createOutfitShader("default", "/shaders/outfit_default_vertex", "/shaders/outfit_default_fragment")
--[[ g_shaders.createOutfitShader("stars", "/shaders/outfit_stars_vertex", "/shaders/outfit_stars_fragment")
g_shaders.addTexture("stars", "/shaders/stars.png")
g_shaders.createOutfitShader("gold", "/shaders/outfit_gold_vertex", "/shaders/outfit_gold_fragment")
g_shaders.addTexture("gold", "/data/shaders/gold.png")
g_shaders.createOutfitShader("rainbow", "/shaders/outfit_rainbow_vertex", "/shaders/outfit_rainbow_fragment")
g_shaders.addTexture("rainbow", "/shaders/rainbow.png")
g_shaders.createOutfitShader("line", "/shaders/outfit_line_vertex", "/shaders/outfit_line_fragment")
g_shaders.createOutfitShader("outline", "/shaders/outfit_outline_vertex", "/shaders/outfit_outline_fragment") ]]--
end end
function terminate() function terminate()

View File

@ -486,7 +486,11 @@ function changeCategory(widget, newCategory)
end end
if g_game.getFeature(GameIngameStore) and widget ~= newCategory and not otcv8shop then if g_game.getFeature(GameIngameStore) and widget ~= newCategory and not otcv8shop then
g_game.requestStoreOffers(newCategory.name:getText()) local serviceType = 0
if g_game.getFeature(GameTibia12Protocol) then
serviceType = 2
end
g_game.requestStoreOffers(newCategory.name:getText(), serviceType)
end end
browsingHistory = false browsingHistory = false

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -56,6 +56,8 @@ namespace Proto {
GameServerPing = 30, GameServerPing = 30,
GameServerChallenge = 31, GameServerChallenge = 31,
GameServerDeath = 40, GameServerDeath = 40,
GameServerSupplyStash = 41,
GameServerDepotState = 42,
// all in game opcodes must be greater than 50 // all in game opcodes must be greater than 50
GameServerFirstGameOpcode = 50, GameServerFirstGameOpcode = 50,
@ -125,7 +127,8 @@ namespace Proto {
GameServerEditText = 150, GameServerEditText = 150,
GameServerEditList = 151, GameServerEditList = 151,
GameServerNews = 152, GameServerNews = 152,
GameServerSendBlessDialog = 155, GameUnkown154 = 154,
GameServerBlessDialog = 155,
GameServerBlessings = 156, GameServerBlessings = 156,
GameServerPreset = 157, GameServerPreset = 157,
GameServerPremiumTrigger = 158, // 1038 GameServerPremiumTrigger = 158, // 1038
@ -157,6 +160,8 @@ namespace Proto {
GameServerPvpSituations = 184, GameServerPvpSituations = 184,
GameServerFloorChangeUp = 190, GameServerFloorChangeUp = 190,
GameServerFloorChangeDown = 191, GameServerFloorChangeDown = 191,
GameServerLootContainers = 192,
GameServerTournamentLeaderboard = 197,
GameServerChooseOutfit = 200, GameServerChooseOutfit = 200,
GameServerImpactTracker = 204, GameServerImpactTracker = 204,
GameServerItemsPrices = 205, GameServerItemsPrices = 205,
@ -166,10 +171,10 @@ namespace Proto {
GameServerKillTracker = 209, GameServerKillTracker = 209,
GameServerVipAdd = 210, GameServerVipAdd = 210,
GameServerVipState = 211, GameServerVipState = 211,
GameServerVipLogout = 212, GameServerVipLogoutOrGroupData = 212,
GameServerCyclopediaNewDetails = 217, GameServerCyclopediaNewDetails = 217,
GameServerTutorialHint = 220, GameServerTutorialHint = 220,
GameServerAutomapFlag = 221, GameServerCyclopediaMapData = 221,
GameServerDailyRewardState = 222, GameServerDailyRewardState = 222,
GameServerCoinBalance = 223, GameServerCoinBalance = 223,
GameServerStoreError = 224, // 1080 GameServerStoreError = 224, // 1080
@ -183,7 +188,7 @@ namespace Proto {
GameServerPreyPrices = 233, GameServerPreyPrices = 233,
GameServerStoreOfferDescription = 234, GameServerStoreOfferDescription = 234,
GameServerImbuementWindow = 235, GameServerImbuementWindow = 235,
GaneServerCloseImbuementWindow = 236, GameServerCloseImbuementWindow = 236,
GameServerMessageDialog = 237, GameServerMessageDialog = 237,
GameServerResourceBalance = 238, GameServerResourceBalance = 238,
GameServerTime = 239, GameServerTime = 239,

View File

@ -251,8 +251,9 @@ private:
void parseVipAdd(const InputMessagePtr& msg); void parseVipAdd(const InputMessagePtr& msg);
void parseVipState(const InputMessagePtr& msg); void parseVipState(const InputMessagePtr& msg);
void parseVipLogout(const InputMessagePtr& msg); void parseVipLogout(const InputMessagePtr& msg);
void parseVipGroupData(const InputMessagePtr& msg);
void parseTutorialHint(const InputMessagePtr& msg); void parseTutorialHint(const InputMessagePtr& msg);
void parseAutomapFlag(const InputMessagePtr& msg); void parseCyclopediaMapData(const InputMessagePtr& msg);
void parseQuestLog(const InputMessagePtr& msg); void parseQuestLog(const InputMessagePtr& msg);
void parseQuestLine(const InputMessagePtr& msg); void parseQuestLine(const InputMessagePtr& msg);
void parseChannelEvent(const InputMessagePtr& msg); void parseChannelEvent(const InputMessagePtr& msg);
@ -274,7 +275,11 @@ private:
void parseDailyReward(const InputMessagePtr& msg); void parseDailyReward(const InputMessagePtr& msg);
void parseDailyRewardHistory(const InputMessagePtr& msg); void parseDailyRewardHistory(const InputMessagePtr& msg);
void parseKillTracker(const InputMessagePtr& msg); void parseKillTracker(const InputMessagePtr& msg);
void parseLootContainers(const InputMessagePtr& msg);
void parseSupplyStash(const InputMessagePtr& msg);
void parseDepotState(const InputMessagePtr& msg);
void parseSupplyTracker(const InputMessagePtr& msg); void parseSupplyTracker(const InputMessagePtr& msg);
void parseTournamentLeaderboard(const InputMessagePtr& msg);
void parseImpactTracker(const InputMessagePtr& msg); void parseImpactTracker(const InputMessagePtr& msg);
void parseItemsPrices(const InputMessagePtr& msg); void parseItemsPrices(const InputMessagePtr& msg);
void parseLootTracker(const InputMessagePtr& msg); void parseLootTracker(const InputMessagePtr& msg);

File diff suppressed because it is too large Load Diff