antiblock
Elveron
  • Chatbox

    You don't have permission to chat.
    Load More
Unk3n0w7

[Release]Mensagens Offline

9 posts in this topic

Imagem colocada

Com isto é possível mandar mensagens para quem esteja offline.

QUEST :


--[[    -- Offline Message System    -- New Version    -- by HaveBeen™]]--quest offlinemessage begin    state start begin        function sendmessage(myname,sname,message)            if(myname == "" or tostring(myname) == nil or sname == "" or tostring(sname) == nil or message == "" or tostring(message) == nil) then                return 0            end            mysql_query("insert into player.offlinemessage values ('"..sname.."','"..myname.."','"..message.."') ")        end        function showmymessage()            local m = mysql_query("select * from player.offlinemessage where sname = '"..pc.get_name().."'")            if(table.getn(m) == 0) then                return 0            end            local by,message = {},{}            table.foreachi(m,                function(n,p)                    by[n],message[n] = m.myname[1],m.message[1]            end)            return by,message        end        when 9003.chat."Offline Message Manager" with pc.is_gm() begin            say_title(mob_name(npc.get_race())..":")            say("")            ---            say("Hello,"..pc.name)            say("")            say_reward("What do you do? ")            say("")            local s = select("Credit Uploaded","Close")            if(s == 1) then                say_title(mob_name(npc.get_race())..":")                say("")                ---                say("Write the name of the person. ")                say("")                local sname = input()                local search = find_pc_by_name(sname)                say_title(mob_name(npc.get_race())..":")                say("")                if(sname == "" or tostring(sname) == nil) then                    say_reward("Please enter a valid name. ")                    say_reward("")                    return                elseif(search == 0) then                    say_reward("This person is offline. ")                    say_reward("Are you kidding me! ")                    return                end                say("How much credit will be uploaded. ")                say("")                local credit = input()                say_title(mob_name(npc.get_race())..":")                say("")                --                if(credit == "" or tonumber(credit) == nil) then                    say_reward("Please enter a valid credit. ")                    say_reward("")                    return                end                say("Credit is uploaded. ")                say("Thanks! ")                local found = pc.select(search)                    pc.setf("offlinemessage","Credit",pc.getf("offlinemessage","Credit")+credit)                pc.select(found)            end        end        when 9003.chat."Offline Message System" begin            say_title(mob_name(npc.get_race())..":")            say("")            ---            if(pc.getf("offlinemessage","Credit") == 0) then                pc.setf("offlinemessage","Credit",10)            end            say("Hello,"..pc.name)            say("")            say("Welcome to the Offline Message System. ")            say("")            say_reward("What do you do? ")            say("")            local s = select("Write Message","My Inbox","Credit Uploaded","Close")            if(s == 1) then                say_title(mob_name(npc.get_race())..":")                say("")                ---                if(pc.getf("offlinemessage","Credit") < 0) then                    say_reward("No credit.. ")                    return                end                say("Write the name of the person you are sending offline messages.. ")                say("")                local sname = input()                local search = find_pc_by_name(sname)                say_title(mob_name(npc.get_race())..":")                say("")                ---                if(sname == "" or tostring(sname) == nil) then                    say_reward("Please enter a valid name. ")                    say_reward("")                    return                elseif(search == 1) then                    say_reward("This person is really offline? ")                    say_reward("Are you kidding me? ")                    return                elseif(sname == pc.name) then                    say_reward("Send your message to yourself. ")                    say_reward("Hahahaha.. ")                    return                end                say("Okay, please tell him what you want to write ")                say("")                local message = input()                say_title(mob_name(npc.get_race())..":")                say("")                if(message == "" or tostring(message) == nil) then                    say_reward("Don't have nothing to say to him? ")                    say_reward("Well.. ")                    return                end                say("Message has been sent. ")                say("Thanks")                offlinemessage.sendmessage(pc.get_name(),sname,message)                pc.setf("offlinemessage","Credit",pc.getf("offlinemessage","Credit")-1)            elseif(s == 3) then                say_title(mob_name(npc.get_race())..":")                say("")                --                say("The amount of your first credit : "..pc.getf("offlinemessage","Credit"))                say("")                say("Credit deals; ")                say("")                say("100 Credit => 10 Euro")                say("250 Credit => 15 Euro")                say("400 Credit => 25 Euro")                say("")            elseif(s == 2) then                say_title(mob_name(npc.get_race())..":")                say("")                ---                local by,message = offlinemessage.showmymessage()                table.insert(message,"Close")                local s = select_table(message)                if(table.getn(message) == s) then                    return                else                    say_title(by[s])                    say("")                    ---                    say_reward(message[s])                    say("")                    say("This message is really remove? ")                    say("")                    local a = select(locale.yes,locale.no)                    if(a == 2) then                        return                    end                    say_title(mob_name(npc.get_race())..":")                    say("")                    --                    mysql_query("delete from player.offlinemessage where myname = '"..by[s].."' and message = '"..message[s].."' ")                    say(by[s].." is removed from the message. ")                    say("Thanks! ")                    say("")                end            end        end    endend  

 



SQL :

CREATE TABLE `offlinemessage` (  `sname` varchar(16) NOT NULL,  `myname` varchar(16) NOT NULL,  `message` varchar(30) NOT NULL,  PRIMARY KEY  (`sname`)) ENGINE=MyISAM DEFAULT CHARSET=latin1  

 




Créditos : GN

Cumprimentos

Share this post


Link to post
Share on other sites
antiblock
https://i.imgur.com/aJ17bf7.gif

Gostei muito!

 

Obrigado por partilhares +1

 

 

 

Cumprimentos.

Share this post


Link to post
Share on other sites

É possível meter isto a dar em um item em vez de npc??

Share this post


Link to post
Share on other sites

when iddoitem.use."Offline Message Manager" with pc.is_gm() begin

Share this post


Link to post
Share on other sites

há mais 1, o dos players, e e só when item.use with pc.is_gm begin e when item.use beginn se mete isso em itens (a parte só offline message)

Share this post


Link to post
Share on other sites

Nao faz mada. Envia a mensagem mas quando a vamos abrir com o outro char nao esta la nada. Ou seja, nao faz nada!

Share this post


Link to post
Share on other sites

esta quest funciona mesmo? tipo, quando a pessoa envia a mensagem com o outro offline, o cara que tava offline recebe esta mensagem sem perda de dados? func 100%? vou deixar meu +1 pela partilha...

Share this post


Link to post
Share on other sites

esta quest funciona mesmo? tipo, quando a pessoa envia a mensagem com o outro offline, o cara que tava offline recebe esta mensagem sem perda de dados? func 100%? vou deixar meu +1 pela partilha...

Supostamente funciona

Share this post


Link to post
Share on other sites

Eu crio a table com a query em player. Não da qualquer erro... ingame funciona tudo 100%, mas o player que esta off quando liga a conta não tem la nada. E no Navicat tambem não aparece nada  depois de enviar a mensagem. Alguma ideia para resolver isto?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now