Mago_pt 27 Posted August 6, 2016 Boas pessoal como podem ter reparado ultimamente tenho andado a mexer em source,e então desenvolvi este sistema. Basicamente quando o sistema tá ligado o char não consegue negociar,deitar items ao chao, primeiramente addionem está quest : ------------------------------------ -- SISTEMA FEITO POR MAGO_PT -- -- PARA : CYBER-GAMERS.ORG -- -- GUARDE OS CREDITOS -- ------------------------------------ quest block_character begin state start begin when 9003.chat." Usar Sistema de Bloquear Personagem" begin say("Boas Jovem desejas Ativar o Sistema de Block?") local chose = select("Claro","ainda não") if chose == 1 then pc.setqf("char_block",0) say("Porfavor define a Tua Password") local pw = input() if pw == nil then say("Password Invalida, por favor tenta de novo") else say("já definis-te a tua password") say("agora volta daqui a 10 segundos") say("para poderes ativar o sistema") set_state(pwdefinida) end else return end end end state pwdefinida begin when 9003.chat." Ativar sistema/block" begin if pc.getqf("char_block") == 0 then say("por favor digita a tua password") local cpw = input() if cpw != pw then say("Password errada, tenta denovo mais tarde") elseif cpw == pw then pc.setqf("char_block",1) end else say("por favor digita a tua password") local cpww = input() if cpww == pw then pc.setqf("char_block",0) elseif cpww != pw then say("password errada, tenta denovo mais tarde") end end end end end agora vão no ficheiro exchange.cpp Procuram pela função bool CHARACTER::ExchangeStart(LPCHARACTER victim) em baixo colocam if (GetQuestFlag("block_character.char_block") > 0 || victim->GetQuestFlag("block_character.char_block") > 0) { return false; } agora vão em char_item.cpp Procuram a função : bool CHARACTER::DropItem(TItemPos Cell, BYTE bCount) e em baixo colocam: if (GetQuestFlag("block_character.char_block") > 0) { return false; } agora em shop.cpp procuram : int CShop::Buy(LPCHARACTER ch, BYTE pos) em baixo colocam : if (GetQuestFlag("block_character.char_block") > 0) { return false; } agora em char.cpp procuram : void CHARACTER::ReqSafeboxLoad(const char* pszPassword) em baixo metam : if (GetQuestFlag("block_character.char_block") > 0) { ChatPacket(CHAT_TYPE_INFO, LC_TEXT("não podes abrir armazem.")); return; } se ajudei +1 Share this post Link to post Share on other sites