-- Lua must check for values using "==", not "=". Only use "=" when defining variables and/or setting values.
-- "PlayerMsg" accepts a function(player_t source, int type, player_t target, string msg)
-- int type being 3 means the message is a pm.
-- Learning the usage of "if", "elseif" and "end" is REQUIRED for basic lua. If you do not understand this, you cannot make scripts.
-- It seems you may need to study the language as a whole. You can start at https://wiki.srb2.org/wiki/Lua
freeslot("sfx_fshi", "sfx_flol", "sfx_fcom", "sfx_fegg", "sfx_ffak", "sfx_fson", "sfx_ftal", "sfx_ffak", "sfx_famy", "sfx_fsil", "sfx_fshd", "sfx_fraf", "sfx_gped", "sfx_fbob", "sfx_fkte")

local cv_disablemeows = CV_RegisterVar({
	name = "disablefaker",
	defaultvalue = 0,
	flags = CV_SAVE|CV_SHOWMODIF,
	PossibleValue = CV_OnOff,
})

addHook("PlayerMsg", function(p, msgtype, p2, msg)
    if p.mo.skin ~= "fakerguide" then return end -- If the player in question isn't Skylina, don't run.
	if cv_disablemeows.value > 0 then return end -- If the player does not wish to hear meows.

    -- If the message contains any of the given strings in any case, play a sound in the sender and reciever's game.
	if msgtype == 3 then
		if (msg:lower():find("overdrive")) then
			S_StartSound(p.mo, sfx_fcom, p)
			S_StartSound(p2.mo, sfx_fcom, p2)
		elseif (msg:lower():find("shiza")) then
			S_StartSound(p.mo, sfx_fshi, p)
			S_StartSound(p2.mo, sfx_fshi, p2)
		elseif (msg:lower():find("happy, joy, nice to meet you")) then
			S_StartSound(p.mo, sfx_flol, p)
			S_StartSound(p2.mo, sfx_flol, p2)
		elseif (msg:lower():find("your next line sonic")) then
			S_StartSound(p.mo, sfx_fson, p)
			S_StartSound(p2.mo, sfx_fson, p2)
		elseif (msg:lower():find("your next line tails")) then
			S_StartSound(p.mo, sfx_ftal, p)
			S_StartSound(p2.mo, sfx_ftal, p2)
		elseif (msg:lower():find("your next line knuckles")) then
			S_StartSound(p.mo, sfx_fkte, p)
			S_StartSound(p2.mo, sfx_fkte, p2)
		elseif (msg:lower():find("your next line amy")) then
			S_StartSound(p.mo, sfx_famy, p)
			S_StartSound(p2.mo, sfx_famy, p2)
		elseif (msg:lower():find("your next line rafael")) then
			S_StartSound(p.mo, sfx_fraf, p)
			S_StartSound(p2.mo, sfx_fraf, p2)
		elseif (msg:lower():find("your next line pedro")) then
			S_StartSound(p.mo, sfx_fped, p)
			S_StartSound(p2.mo, sfx_fped, p2)
		elseif (msg:lower():find("your next line faker")) then
			S_StartSound(p.mo, sfx_ffak, p)
			S_StartSound(p2.mo, sfx_ffak, p2)
		elseif (msg:lower():find("your next line eggman")) then
			S_StartSound(p.mo, sfx_fegg, p)
			S_StartSound(p2.mo, sfx_fegg, p2)
		elseif (msg:lower():find("your next line shadow")) then
			S_StartSound(p.mo, sfx_fshd, p)
			S_StartSound(p2.mo, sfx_fshd, p2)
		elseif (msg:lower():find("your next line silver")) then
			S_StartSound(p.mo, sfx_fsil, p)
			S_StartSound(p2.mo, sfx_fsil, p2)
		elseif (msg:lower():find("your next line bob")) then
			S_StartSound(p.mo, sfx_fbob, p)
			S_StartSound(p2.mo, sfx_fbob, p2)
			end
	else
		if (msg:lower():find("overdrive")) then
			for player in players.iterate do
				S_StartSound(player.mo, sfx_fcom, player)
			end
		elseif (msg:lower():find("shiza")) then
			for player in players.iterate do
				S_StartSound(player.mo, sfx_fshi, player)
			end
		elseif (msg:lower():find("happy, joy, nice to meet you")) then
			for player in players.iterate do
				S_StartSound(player.mo, sfx_flol, player)
			end
		elseif (msg:lower():find("your next line sonic")) then
			for player in players.iterate do
				S_StartSound(player.mo, sfx_fson, player)
			end
		elseif (msg:lower():find("your next line tails")) then
			for player in players.iterate do
				S_StartSound(player.mo, sfx_ftal, player)
			end
		elseif (msg:lower():find("your next line knuckles")) then
			for player in players.iterate do
				S_StartSound(player.mo, sfx_fkte, player)
			end
		elseif (msg:lower():find("your next line amy")) then
			for player in players.iterate do
				S_StartSound(player.mo, sfx_famy, player)
			end
		elseif (msg:lower():find("your next line rafael")) then
			for player in players.iterate do
				S_StartSound(player.mo, sfx_fraf, player)
			end
		elseif (msg:lower():find("your next line pedro")) then
			for player in players.iterate do
				S_StartSound(player.mo, sfx_fped, player)
			end
		elseif (msg:lower():find("your next line faker")) then
			for player in players.iterate do
				S_StartSound(player.mo, sfx_ffak, player)
			end
		elseif (msg:lower():find("your next line eggman")) then
			for player in players.iterate do
				S_StartSound(player.mo, sfx_fegg, player)
			end
		elseif (msg:lower():find("your next line shadow")) then
			for player in players.iterate do
				S_StartSound(player.mo, sfx_fshd, player)
			end
		elseif (msg:lower():find("your next line silver")) then
			for player in players.iterate do
				S_StartSound(player.mo, sfx_fsil, player)
			end
		elseif (msg:lower():find("your next line bob")) then
			for player in players.iterate do
				S_StartSound(player.mo, sfx_fbob, player)
			end
		end
	end
end)

