Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Quando digito !cast on, aparece esse erro logo a baixo, só que o cast fica con consigo ver, porem da esse erro enorme,e chega ate da uma trava no servidor.

alguem poe me ajuda a solucionar?

 

Eu uso esse OTX  \/

 

The OTX Server Version: (2.1.70 - 1591) - Codename: (Mycological)
Compilied with Microsoft Visual C++ version 10.0 for arch 64 Bits at Feb  3 2016 17:02:53

 

Citar

[Error - TalkAction Interface]
                function onSay(cid, words, param, channelId)
                        local t, data = string.explode(param, " ", 1), getPlayerSpectators(cid)
                        if(isInArray({'off', 'no', 'disable'}, t[1])) then
                                data.mutes = {}
                                data.broadcast = false
                                doPlayerSetSpectators(cid, data)

                                db.executeQuery("UPDATE `players` SET `broadcasting` = 0, `viewers` = 0 WHERE `id` = " .. getPlayerGUID(cid))
                                doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You are not streaming.")
                        elseif(isInArray({'on', 'yes', 'enable'}, t[1])) then
                                data.broadcast = true
                                doPlayerSetSpectators(cid, data)
                                doPlayerOpenPrivateChannel(cid)

                                db.executeQuery("UPDATE `players` SET `broadcasting` = 1 WHERE `id` = " .. getPlayerGUID(cid))
                                doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You are now streaming.")
                        elseif(isInArray({'show', 'count', 'see'}, t[1])) then
                                if(data.broadcast) then
                                        local count = table.maxn(data.names)
                                        if(count > 0) then
                                                doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You are currently watched by " .. count .. " people.")
                                                local str = ""
                                                for _, name in ipairs(data.names) do
                                                        str = str .. (str:len() > 0 and ", " or "") .. name
                                                end

                                                doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, str .. ".")
                                        else
                                                doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "None is watching your stream right now.")
                                        end
                                else
                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You are not streaming right now.")
                                end
                        elseif(isInArray({'kick', 'remove'}, t[1])) then
                                if(data.broadcast) then
                                        if(t[2]) then
                                                if(t[2] ~= "all") then
                                                        local found = false
                                                        for _, name in ipairs(data.names) do
                                                                if(t[2]:lower() == name:lower()) then
                                                                        found = true
                                                                        break
                                                                end
                                                        end

                                                        if(found) then
                                                                table.insert(data.kick, t[2])
                                                                doPlayerSetSpectators(cid, data)
                                                                doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Spectator " .. t[2] .. " has been kicked.")
                                                        else
                                                                doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Spectator " .. t[2] .. " not found.")
                                                        end
                                                else
                                                        data.kick = data.names
                                                        doPlayerSetSpectators(cid, data)
                                                end
                                        else
                                                doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You need to type a name.")
                                        end
                                else
                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You are not streaming right now.")
                                end
                        elseif(isInArray({'ban', 'block'}, t[1])) then
                                if(data.broadcast) then
                                        if(t[2]) then
                                                local found = false
                                                for _, name in ipairs(data.names) do
                                                        if(t[2]:lower() == name:lower()) then
                                                                found = true
                                                                break
                                                        end
                                                end

                                                if(found) then
                                                        table.insert(data.bans, t[2])
                                                        doPlayerSetSpectators(cid, data)
                                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Spectator " .. t[2] .. " has been banned.")
                                                else
                                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Spectator " .. t[2] .. " not found.")
                                                end
                                        else
                                                doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You need to type a name.")
                                        end
                                else
                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You are not streaming right now.")
                                end
                        elseif(isInArray({'unban', 'unblock'}, t[1])) then
                                if(data.broadcast) then
                                        if(t[2]) then
                                                local found, i = 0, 1
                                                for _, name in ipairs(data.bans) do
                                                        if(t[2]:lower() == name:lower()) then
                                                                found = i
                                                                break
                                                        end

                                                        i = i + 1
                                                end

                                                if(found > 0) then
                                                        table.remove(data.bans, found)
                                                        doPlayerSetSpectators(cid, data)
                                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Spectator " .. t[2] .. " has been unbanned.")
                                                else
                                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Spectator " .. t[2] .. " not found.")
                                                end
                                        else
                                                doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You need to type a name.")
                                        end
                                else
                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You are not streaming right now.")
                                end
                        elseif(isInArray({'bans', 'banlist'}, t[1])) then
                                if(table.maxn(data.bans)) then
                                        local str = ""
                                        for _, name in ipairs(data.bans) do
                                                str = str .. (str:len() > 0 and ", " or "") .. name
                                        end

                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Currently banned spectators: " .. str .. ".")
                                else
                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Your ban list is empty.")
                                end
                        elseif(isInArray({'mute', 'squelch'}, t[1])) then
                                if(data.broadcast) then
                                        if(t[2]) then
                                                local found = false
                                                for _, name in ipairs(data.names) do
                                                        if(t[2]:lower() == name:lower()) then
                                                                found = true
                                                                break
                                                        end
                                                end

                                                if(found) then
                                                        table.insert(data.mutes, t[2])
                                                        doPlayerSetSpectators(cid, data)
                                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Spectator " .. t[2] .. " has been muted.")
                                                else
                                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Spectator " .. t[2] .. " not found.")
                                                end
                                        else
                                                doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You need to type a name.")
                                        end
                                else
                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You are not streaming right now.")
                                end
                        elseif(isInArray({'unmute', 'unsquelch'}, t[1])) then
                                if(data.broadcast) then
                                        if(t[2]) then
                                                local found, i = 0, 1
                                                for _, name in ipairs(data.mutes) do
                                                        if(t[2]:lower() == name:lower()) then
                                                                found = i
                                                                break
                                                        end

                                                        i = i + 1
                                                end

                                                if(found > 0) then
                                                        table.remove(data.mutes, found)
                                                        doPlayerSetSpectators(cid, data)
                                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Spectator " .. t[2] .. " has been unmuted.")
                                                else
                                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Spectator " .. t[2] .. " not found.")
                                                end
                                        else
                                                doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You need to type a name.")
                                        end
                                else
                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You are not streaming right now.")
                                end
                        elseif(isInArray({'mutes', 'mutelist'}, t[1])) then
                                if(table.maxn(data.mutes)) then
                                        local str = ""
                                        for _, name in ipairs(data.mutes) do
                                                str = str .. (str:len() > 0 and ", " or "") .. name
                                        end

                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Currently muted spectators: " .. str .. ".")
                                else
                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Your mute list is empty.")
                                end
                        elseif(isInArray({'auth', 'protect', 'protection', 'protected'}, t[1])) then
                                if(isInArray({'off', 'no', 'disable'}, t[2])) then
                                        data.auth = false
                                        doPlayerSetSpectators(cid, data)
                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Your chat is now unprotected, all spectators can chat without authentication.")
                                elseif(isInArray({'on', 'yes', 'enable'}, t[2])) then
                                        data.auth = true
                                        doPlayerSetSpectators(cid, data)
                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Your chat is now protected, all spectators have to authenticate before they can talk.")
                                else
                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Your chat is currently " .. (data.auth and "protected" or "unprotected") .. " from guests.")
                                end
                        elseif(isInArray({'password', 'guard'}, t[1])) then
                                if(t[2]) then
                                        if(isInArray({'off', 'no', 'disable'}, t[2])) then
                                                if(data.password:len() ~= 0) then
                                                        db.executeQuery("UPDATE `players` SET `broadcasting` = `broadcasting` - 2 WHERE `id` = " .. getPlayerGUID(cid))
                                                end

                                                data.password = ""
                                                doPlayerSetSpectators(cid, data)
                                                doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You have removed password for your stream.")
                                        else
                                                if(data.password:len() ~= 0) then
                                                        db.executeQuery("UPDATE `players` SET `broadcasting` = `broadcasting` + 2 WHERE `id` = " .. getPlayerGUID(cid))
                                                end

                                                data.password = string.trim(t[2])
                                                doPlayerSetSpectators(cid, data)
                                                doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "You have set new password for your stream.")
                                        end
                                elseif(data.password ~= "") then
                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Your stream is currently protected with password: " .. data.password .. ".")
                                else
                                        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Your stream is currently not protected.")
                                end
                        elseif(isInArray({'status', 'info'}, t[1])) then
                                doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Your stream is currently " .. (data.broadcast and "enabled" or "disabled") .. ".")
                        else
                                doPlayerPopupFYI(cid, "Available commands:\n\n/cast on - enables the stream\n/cast off - disables the stream\n/cast password {password} - sets a password on the stream\n/cast password off - disables the password protection\n/cast auth on - enables requirement of authentication on chat\n/cast auth off - disables requirement of authentication on chat\n/cast kick {name} - kick a spectator from your stream\n/cast ban {name} - locks spectator IP from joining your stream\n/cast unban {name} - removes banishment lock\n/cast bans - shows banished spectators list\n/cast mute {name} - mutes selected spectator from chat\n/cast unmute {name} - removes mute\n/cast mutes - shows muted spectators list\n/cast show - displays the amount and nicknames of current spectators\n/cast status - displays stream status")
                        end
                        return true
                end
        :onSay
Description:
[string "LuaInterface::loadBuffer"]:13: attempt to call global 'doPlayerOpenPrivateChannel' (a nil value)
stack traceback:
        [string "LuaInterface::loadBuffer"]:13: in function <[string "LuaInterface::loadBuffer"]:1>

 

Esse é o script do cast que utilizei

[MODS] Cast on/off em OTX! 8.60 - Tibia Clássico (migrando) - Tibia King - Tudo sobre Tibia, OTServ e Bots!

 

 

 

Link para o post
Compartilhar em outros sites
22 horas atrás, vitinhoo96 disse:

doPlayerOpenPrivateChannel(cid)

 

22 horas atrás, vitinhoo96 disse:

[string "LuaInterface::loadBuffer"]:13: attempt to call global 'doPlayerOpenPrivateChannel' (a nil value)

 

verifica se existe essa função na sua source, essa é uma função do luascript.cpp

 

 

caso não exista, va em luascript.cpp
procure por:

doPlayerOpenChannel ou doCreatureChannelSay

e adicione abaixo isso:

	//doPlayerOpenPrivateChannel(cid)
	lua_register(m_luaState, "doPlayerOpenPrivateChannel", LuaInterface::luaDoPlayerOpenPrivateChannel);

 

 

depois procure novamente por doPlayerOpenChannel ou doCreatureChannelSay

vai achar uma função +/- assim:

int32_t LuaInterface::luaDoPlayerOpenChannel(lua_State* L)
{
	//doPlayerOpenChannel(cid, channelId)
	uint16_t channelId = popNumber(L);
	uint32_t cid = popNumber(L);

	ScriptEnviroment* env = getEnv();
	if(env->getPlayerByUID(cid))
	{
		lua_pushboolean(L, g_game.playerOpenChannel(cid, channelId));
		return 1;
	}

	errorEx(getError(LUA_ERROR_PLAYER_NOT_FOUND));
	lua_pushboolean(L, false);
	return 1;
}

 

ADICIONE ABAIXO DELA isso:

int32_t LuaInterface::luaDoPlayerOpenPrivateChannel(lua_State* L)
{
	//doPlayerOpenPrivateChannel(cid)
	uint32_t cid = popNumber(L);

	ScriptEnviroment* env = getEnv();
	if(env->getPlayerByUID(cid))
	{
		lua_pushboolean(L, g_game.playerCreatePrivateChannel(cid));
		return 1;
	}

	errorEx(getError(LUA_ERROR_PLAYER_NOT_FOUND));
	lua_pushboolean(L, false);
	return 1;
}

 

 

depois abra o luascript.h
procure por luaDoPlayerOpenChannel

vai ser algo tipo: 

static int32_t luaDoPlayerOpenChannel(lua_State* L);

 

e ADICIONE ABAIXO:

static int32_t luaDoPlayerOpenPrivateChannel(lua_State* L);

 

após isso, RECOMPILE SUA SOURCE, e REABRA SEU OT com o novo arquivo que foi compilado e teste.

Link para o post
Compartilhar em outros sites
1 minuto atrás, FeeTads disse:

 

 

verifica se existe essa função na sua source, essa é uma função do luascript.cpp

 

 

caso não exista, va em luascript.cpp
procure por:

doPlayerOpenChannel ou doCreatureChannelSay

e adicione abaixo isso:


	//doPlayerOpenPrivateChannel(cid)
	lua_register(m_luaState, "doPlayerOpenPrivateChannel", LuaInterface::luaDoPlayerOpenPrivateChannel);

 

 

depois procure novamente por doPlayerOpenChannel ou doCreatureChannelSay

vai achar uma função +/- assim:


int32_t LuaInterface::luaDoPlayerOpenChannel(lua_State* L)
{
	//doPlayerOpenChannel(cid, channelId)
	uint16_t channelId = popNumber(L);
	uint32_t cid = popNumber(L);

	ScriptEnviroment* env = getEnv();
	if(env->getPlayerByUID(cid))
	{
		lua_pushboolean(L, g_game.playerOpenChannel(cid, channelId));
		return 1;
	}

	errorEx(getError(LUA_ERROR_PLAYER_NOT_FOUND));
	lua_pushboolean(L, false);
	return 1;
}

 

ADICIONE ABAIXO DELA isso:


int32_t LuaInterface::luaDoPlayerOpenPrivateChannel(lua_State* L)
{
	//doPlayerOpenPrivateChannel(cid)
	uint32_t cid = popNumber(L);

	ScriptEnviroment* env = getEnv();
	if(env->getPlayerByUID(cid))
	{
		lua_pushboolean(L, g_game.playerCreatePrivateChannel(cid));
		return 1;
	}

	errorEx(getError(LUA_ERROR_PLAYER_NOT_FOUND));
	lua_pushboolean(L, false);
	return 1;
}

 

 

depois abra o luascript.h
procure por luaDoPlayerOpenChannel

vai ser algo tipo: 


static int32_t luaDoPlayerOpenChannel(lua_State* L);

 

e ADICIONE ABAIXO:


static int32_t luaDoPlayerOpenPrivateChannel(lua_State* L);

 

após isso, RECOMPILE SUA SOURCE, e REABRA SEU OT com o novo arquivo que foi compilado e teste.

consegui resolver ja, so que agora quando digito !cast on, nao aprece nem um erro, porem não abre o channel do cast

 

Link para o post
Compartilhar em outros sites
1 minuto atrás, vitinhoo96 disse:

consegui resolver ja, so que agora quando digito !cast on, nao aprece nem um erro, porem não abre o channel do cast

tenta modificar o script da sua source pelo que mandei, e verifica se existe a acc de cast tudo certinho

Link para o post
Compartilhar em outros sites
Agora, FeeTads disse:

tenta modificar o script da sua source pelo que mandei, e verifica se existe a acc de cast tudo certinho

sim ele esta funcioando certinho, consigo ver o player assisinto a cast, mas quando digito o comando !cast on, ele não abre o channel chat, tenho que apertar CTRL+O pra abrir o chat pra conversar com os espectadores 

Link para o post
Compartilhar em outros sites
28 minutos atrás, vitinhoo96 disse:

apertar CTRL+O pra abrir o chat pra conversar com os espectadores 

tu criou o privateChannel la no channels.xml?

XML > channels.xml 

<channel id="65535" name="Private Chat Channel"/>

 

Link para o post
Compartilhar em outros sites

Sim esta criado, porem não abre o chat, agora se aperta CTRL+O ai ele abre e da pra conversar, mas queria que quando digitava !cast on, ele ja abria o chat automatico 

Link para o post
Compartilhar em outros sites
1 minuto atrás, vitinhoo96 disse:

Sim esta criado, porem não abre o chat, agora se aperta CTRL+O ai ele abre e da pra conversar, mas queria que quando digitava !cast on, ele ja abria o chat automatico 

 

tenta colocar 

doPlayerOpenChannel(cid, 65535)

no lugar de

doPlayerOpenPrivateChannel(cid)

 la no mods pra ver

Link para o post
Compartilhar em outros sites
1 minuto atrás, FeeTads disse:

 

tenta colocar 


doPlayerOpenChannel(cid, 65535)

no lugar de


doPlayerOpenPrivateChannel(cid)

 la no mods pra ver

Não achei isso ai la no mods, olha o mod meu

 

<?xml version="1.0" encoding="UTF-8"?>
<mod name="Mod Cast" version="1.0" author="Martyx" contact="[email protected]" enabled="yes">
	<event type="logout" name="cast-log-out" event="script"><![CDATA[
		function onLogout(cid, forceLogout)
			db.executeQuery("UPDATE `players` SET `broadcasting` = 0, `viewers` = 0 WHERE `id` = " .. getPlayerGUID(cid) .. " LIMIT 1")
			return true
		end
	]]></event>
	<globalevent name="viewers" interval="10000" event="script"><![CDATA[
		function onThink(interval)
			local players = getPlayersOnline()
			for _, pid in ipairs(players) do
				local data = getPlayerSpectators(pid)
				if(data.broadcast) then
					db.executeQuery("UPDATE `players` set `viewers` = " .. table.maxn(data.names) .. " where `id` = " .. getPlayerGUID(pid) .. ";")
				end
			end

			return true
		end
	]]></globalevent>
	<talkaction words="/cast;!cast" event="script"><![CDATA[
		function onSay(cid, words, param, channelId)
			local t, data = string.explode(param, " ", 1), getPlayerSpectators(cid)
			if(isInArray({'off', 'no', 'disable'}, t[1])) then
				data.mutes = {}
				data.broadcast = false
				doPlayerSetSpectators(cid, data)

				db.executeQuery("UPDATE `players` SET `broadcasting` = 0, `viewers` = 0 WHERE `id` = " .. getPlayerGUID(cid))
				doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You have disabled your cast stream.")
			elseif(isInArray({'on', 'yes', 'enable'}, t[1])) then
				data.broadcast = true
				doPlayerSetSpectators(cid, data)

				db.executeQuery("UPDATE `players` SET `broadcasting` = 1 WHERE `id` = " .. getPlayerGUID(cid))
				doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You have enabled your cast stream.")
			elseif(isInArray({'show', 'count', 'see'}, t[1])) then
				if(data.broadcast) then
					local count = table.maxn(data.names)
					if(count > 0) then
						doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You are currently watched by " .. count .. " people.")
						local str = ""
						for _, name in ipairs(data.names) do
							str = str .. (str:len() > 0 and ", " or "") .. name
						end

						doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, str .. ".")
					else
						doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "None is watching your stream right now.")
					end
				else
					doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You are not streaming right now.")
				end
			elseif(isInArray({'kick', 'remove'}, t[1])) then
				if(data.broadcast) then
					if(t[2]) then
						if(t[2] ~= "all") then
							local found = false
							for _, name in ipairs(data.names) do
								if(t[2]:lower() == name:lower()) then
									found = true
									break
								end
							end

							if(found) then
								table.insert(data.kick, t[2])
								doPlayerSetSpectators(cid, data)
								doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Spectator " .. t[2] .. " has been kicked.")
							else
								doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Spectator " .. t[2] .. " not found.")
							end
						else
							data.kick = data.names
							doPlayerSetSpectators(cid, data)
						end
					else
						doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need to type a name.")
					end
				else
					doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You are not streaming right now.")
				end
			elseif(isInArray({'ban', 'block'}, t[1])) then
				if(data.broadcast) then
					if(t[2]) then
						local found = false
						for _, name in ipairs(data.names) do
							if(t[2]:lower() == name:lower()) then
								found = true
								break
							end
						end

						if(found) then
							table.insert(data.bans, t[2])
							doPlayerSetSpectators(cid, data)
							doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Spectator " .. t[2] .. " has been banned.")
						else
							doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Spectator " .. t[2] .. " not found.")
						end
					else
						doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need to type a name.")
					end
				else
					doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You are not streaming right now.")
				end
			elseif(isInArray({'unban', 'unblock'}, t[1])) then
				if(data.broadcast) then
					if(t[2]) then
						local found, i = 0, 1
						for _, name in ipairs(data.bans) do
							if(t[2]:lower() == name:lower()) then
								found = i
								break
							end

							i = i + 1
						end

						if(found > 0) then
							table.remove(data.bans, found)
							doPlayerSetSpectators(cid, data)
							doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Spectator " .. t[2] .. " has been unbanned.")
						else
							doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Spectator " .. t[2] .. " not found.")
						end
					else
						doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need to type a name.")
					end
				else
					doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You are not streaming right now.")
				end
			elseif(isInArray({'bans', 'banlist'}, t[1])) then
				if(table.maxn(data.bans)) then
					local str = ""
					for _, name in ipairs(data.bans) do
						str = str .. (str:len() > 0 and ", " or "") .. name
					end

					doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Currently banned spectators: " .. str .. ".")
				else
					doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your ban list is empty.")
				end
			elseif(isInArray({'mute', 'squelch'}, t[1])) then
				if(data.broadcast) then
					if(t[2]) then
						local found = false
						for _, name in ipairs(data.names) do
							if(t[2]:lower() == name:lower()) then
								found = true
								break
							end
						end

						if(found) then
							table.insert(data.mutes, t[2])
							doPlayerSetSpectators(cid, data)
							doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Spectator " .. t[2] .. " has been muted.")
						else
							doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Spectator " .. t[2] .. " not found.")
						end
					else
						doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need to type a name.")
					end
				else
					doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You are not streaming right now.")
				end
			elseif(isInArray({'unmute', 'unsquelch'}, t[1])) then
				if(data.broadcast) then
					if(t[2]) then
						local found, i = 0, 1
						for _, name in ipairs(data.mutes) do
							if(t[2]:lower() == name:lower()) then
								found = i
								break
							end

							i = i + 1
						end

						if(found > 0) then
							table.remove(data.mutes, found)
							doPlayerSetSpectators(cid, data)
							doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Spectator " .. t[2] .. " has been unmuted.")
						else
							doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Spectator " .. t[2] .. " not found.")
						end
					else
						doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need to type a name.")
					end
				else
					doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You are not streaming right now.")
				end
			elseif(isInArray({'mutes', 'mutelist'}, t[1])) then
				if(table.maxn(data.mutes)) then
					local str = ""
					for _, name in ipairs(data.mutes) do
						str = str .. (str:len() > 0 and ", " or "") .. name
					end

					doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Currently muted spectators: " .. str .. ".")
				else
					doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your mute list is empty.")
				end
			elseif(isInArray({'auth', 'protect', 'protection', 'protected'}, t[1])) then
				if(isInArray({'off', 'no', 'disable'}, t[2])) then
					data.auth = false
					doPlayerSetSpectators(cid, data)
					doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your chat is now unprotected, all spectators can chat without authentication.")
				elseif(isInArray({'on', 'yes', 'enable'}, t[2])) then
					data.auth = true
					doPlayerSetSpectators(cid, data)
					doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your chat is now protected, all spectators have to authenticate before they can talk.")
				else
					doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your chat is currently " .. (data.auth and "protected" or "unprotected") .. " from guests.")
				end
			elseif(isInArray({'password', 'guard'}, t[1])) then
				if(t[2]) then
					if(isInArray({'off', 'no', 'disable'}, t[2])) then
						if(data.password:len() ~= 0) then
							db.executeQuery("UPDATE `players` SET `broadcasting` = `broadcasting` - 2 WHERE `id` = " .. getPlayerGUID(cid))
						end

						data.password = ""
						doPlayerSetSpectators(cid, data)
						doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You have removed password for your stream.")
					else
						if(data.password:len() ~= 0) then
							db.executeQuery("UPDATE `players` SET `broadcasting` = `broadcasting` + 2 WHERE `id` = " .. getPlayerGUID(cid))
						end

						data.password = string.trim(t[2])
						doPlayerSetSpectators(cid, data)
						doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You have set new password for your stream.")
					end
				elseif(data.password ~= "") then
					doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your stream is currently protected with password: " .. data.password .. ".")
				else
					doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your stream is currently not protected.")
				end
			elseif(isInArray({'status', 'info'}, t[1])) then
				doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your stream is currently " .. (data.broadcast and "enabled" or "disabled") .. ".")
			else
				doPlayerPopupFYI(cid, "Available commands:\n\n/cast on - enables the stream\n/cast off - disables the stream\n/cast password {password} - sets a password on the stream\n/cast password off - disables the password protection\n/cast auth on - enables requirement of authentication on chat\n/cast auth off - disables requirement of authentication on chat\n/cast kick {name} - kick a spectator from your stream\n/cast ban {name} - locks spectator IP from joining your stream\n/cast unban {name} - removes banishment lock\n/cast bans - shows banished spectators list\n/cast mute {name} - mutes selected spectator from chat\n/cast unmute {name} - removes mute\n/cast mutes - shows muted spectators list\n/cast show - displays the amount and nicknames of current spectators\n/cast status - displays stream status")
			end

			return true
		end
	]]></talkaction>
</mod>

 

Link para o post
Compartilhar em outros sites
elseif(isInArray({'on', 'yes', 'enable'}, t[1])) then
				data.broadcast = true
				doPlayerSetSpectators(cid, data)

				db.executeQuery("UPDATE `players` SET `broadcasting` = 1 WHERE `id` = " .. getPlayerGUID(cid))
				doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You have enabled your cast stream.")

 

ali no espaço entre "doPlayerSetSpectators"
embaixo vc coloca
 

doPlayerOpenChannel(cid, 65535)

 

ficando assim

 

elseif(isInArray({'on', 'yes', 'enable'}, t[1])) then
				data.broadcast = true
				doPlayerSetSpectators(cid, data)
				doPlayerOpenChannel(cid, 65535)
				db.executeQuery("UPDATE `players` SET `broadcasting` = 1 WHERE `id` = " .. getPlayerGUID(cid))
				doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You have enabled your cast stream.")

 

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Conteúdo Similar

    • Por braianlomas
      Como faço para corrigir esse problema para meu cliente, eu uso o tfs 0.3.6  
      Quero resolver esse problema que tenho no meu cliente, como e onde posso resolver?  
      Eu uso o tfs 0.3.6, não tenho as fontes do cliente, se você puder me dar eu vou amá-las para sempre  
       

       
    • Por A.Mokk
      Ola pessoal, estou tentando compilar o TFS 1.5 Downgrade para 8.60 atraves do MSVC 2022, ao tentar compilar da o seguinte erro:
       
       
      Fiz o download do MSVC, GitDash, TFS-SDK-3.2, e de varios boosts que tentei, ao fazer o seguinte procedimento no GitDash:
       
      Ao chegar em ./bootstrap-vcpkg.bat o GitDash nao consegue realizar o procedimento corretamente, alguem poderia me ajudar ?

      Tentei de diversas formas mas o mesmo erro sempre persiste, atualmente meu servidor utiliza TFS 0.4, consigo compilar sem nenhum problema no MSVC 2010, porem, as limitações do TFS 0.4 estão me fazendo precisar atualizar, se alguem souber como corrigir esses erros eu agradeço !

      Tutoriais utilizados :
      Compiling on Windows (vcpkg) · otland/forgottenserver Wiki · GitHub
      Compiling on Windows · otland/forgottenserver Wiki · GitHub
      Compilando TFS 1.3 com vídeo-aula - Tutoriais Infraestrutura & Proteção - Tibia King - Tudo sobre Tibia, OTServ e Bots!
      Compilar TFS 1.3 Vcpkg - Tutoriais Infraestrutura & Proteção - Tibia King - Tudo sobre Tibia, OTServ e Bots!
       
      O que acontece no Powershell:
       
    • Por thunmin
      .Qual servidor ou website você utiliza como base? 
      Canary 2.3.6
      Qual o motivo deste tópico? 
      Queria fazer com que os players não pudessem mexer no aleta sio, pois, agora os mesmos estão conseguindo mexer nos itens
      Está surgindo algum erro? Se sim coloque-o aqui. 
       
      Você tem o código disponível? Se tiver publique-o aqui: 
         
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       
    • Por thunmin
      .Qual servidor ou website você utiliza como base? 
      canary para o cliente 13.16
      Qual o motivo deste tópico? 
      Não consigo encontrar onde ajusta
      to com o problema no 13.16  o exausted, por exemplo os kinas era pra combar exori, erori gran e exori min, porém não ta indo ta dando exausted o char ta soltando magia ou runa e não consegue usar as potions
      Está surgindo algum erro? Se sim coloque-o aqui. 
       
      Você tem o código disponível? Se tiver publique-o aqui: 
         
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       
    • Por Andersontatuador
      Olá galera da TK, me chamo Anderson estou procurando alguém profissional em otservs e site.
      Já tenho um servidor o site e o cliente preciso só de uma pessoal competente, que esteja empenhado a trabalhar,
      não quero nada de graça, pois nessa onda fui mais roubado do quer eu pagar um profissional.
      caso alguém se interesse entrar em contato comigo através do whatsapp
      82 9 9304-9462
       
      Está surgindo algum erro? Se sim coloque-o aqui. 
       
      Você tem o código disponível? Se tiver publique-o aqui: 
         
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo