Jump to content

evilpuncker

Community Contributors
  • Content Count

    2178
  • Joined

  • Last visited

  • Days Won

    66

evilpuncker last won the day on September 30 2020

evilpuncker had the most liked content!

About evilpuncker

  • Rank
    vai se tratar garota
  • Birthday 01/01/1917

Profile Information

  • Gender
    Male
  • Location:
    bronzil
  • Github
    EPuncker
  • Emulator
    Hercules
  • Client Version
    2019-05-30a MAIN

Recent Profile Visitors

20710 profile views
  1. I tried creating a command that will execute different actions on different intervals, and using the command will turn them ON/OFF, but it is just not working, what am I doing wrong? - script test FAKE_NPC,{ OnInit: bindatcmd("test", strnpcinfo(NPC_NAME)+"::OnAtcommand", 0, 99); end; OnAtcommand: atcommand("@test"); // executes the "test" command ON/OFF if (.@on == 1) { .@on = 0; deltimer(strnpcinfo(NPC_NAME_UNIQUE)+"::OnEvent1"); deltimer(strnpcinfo(NPC_NAME_UNIQUE)+"::OnEvent2"); deltimer(strnpcinfo(NPC_NAME_UNIQUE)+"::OnEvent3"); end; } else { .@on = 1; // 1000 = 1 second | 60000 = 1 min | 3600000 = 1 hour addtimer(10000, strnpcinfo(NPC_NAME_UNIQUE)+"::OnEvent1"); addtimer(5000, strnpcinfo(NPC_NAME_UNIQUE)+"::OnEvent2"); addtimer(300, strnpcinfo(NPC_NAME_UNIQUE)+"::OnEvent3"); end; } end; OnEvent1: if (.@on == 0) { deltimer(strnpcinfo(NPC_NAME_UNIQUE)+"::OnEvent1"); end; } // do something X addtimer(10000, strnpcinfo(NPC_NAME_UNIQUE)+"::OnEvent1"); end; OnEvent2: if (.@on == 0) { deltimer(strnpcinfo(NPC_NAME_UNIQUE)+"::OnEvent2"); end; } // do something Y addtimer(5000, strnpcinfo(NPC_NAME_UNIQUE)+"::OnEvent2"); end; OnEvent3: if (.@on == 0) { deltimer(strnpcinfo(NPC_NAME_UNIQUE)+"::OnEvent3"); end; } // do something Z addtimer(300, strnpcinfo(NPC_NAME_UNIQUE)+"::OnEvent3"); end; }
  2. thanks! the "full" code is here on this paste (its missing the showScript part thought) so I can just remove these three lines? since now the code is using preHook if (!mannersize || pc_has_permission(*sd, bypass_chat_filter) || !pc->can_talk(*sd)) //return retVal; return true; yeah I forgot to say my OS is windows, this is the warning: when I click the warning it sends the cursor directly to the *sd part
  3. Hello everyone! thanks for stopping by. I have zero source/programing knowledge but I was able to make this code to work (yes, it works), but there are two things bothering me: the clif->ShowScript part works but its throw a warning when compiling the warning is: the return retVal; that I commented out and changed it to return true;, is it okay? I made these changes to old code following these changes to make the code work on newer hercules (yes I know I can ignore warnings, but maybe its something really easy that I'm missing and can be fixed) this is the code: bool filter_chat(struct map_session_data **sd, const char **message_) { const char* message = *message_; unsigned int i; char output[254]; // Compiler supposed to reuse the pre-allocated space but who knows, those few bytes doesn't worth lowering the speed. if (!message) return false; if (!mannersize || pc_has_permission(*sd, bypass_chat_filter) || !pc->can_talk(*sd)) //return retVal; return true; for (i = 0; i < mannersize; ++i) { if (libpcre->exec(mannerlist[i].regex, mannerlist[i].extra, message, (int)strlen(message), 0, 0, NULL, 0) != PCRE_ERROR_NOMATCH) { sprintf(output, "i've been saying bad stuff"); clif->messagecolor_self((*sd)->fd, COLOR_RED, output); clif->ShowScript(*sd, "watch out for your mouth", AREA); hookStop(); return false; } } return true; } its part of this plugin (the lite version)
  4. I was able to make the lite version work, except that I don't know what to return in place of return retVal;... I just changed it to return true but I don't know if its the correct way here is the "working" lite version in case anyone wants! unfortunately, the full version was too complicated for me to try fixing it WARNING: players can bypass it by simply using an uppercase letter, since the check is not case sensitive and the filter doesn't seem to support "/i" to ignore case sensitiveness
  5. use OnPCStatCalcEvent by annie ruru https://github.com/AnnieRuru/Release/tree/master/plugins/Release/OnPCStatCalcEvent
  6. post the solution in case anyone else have this problem/question in the future
  7. msgstringtable.txt or MsgString_KR.lub or anything similar should do the trick
  8. something like this: prontera,150,150,3 script NPC NAME 1_F_SIGNZISK,{ if (strcharinfo(PC_GUILD) != "Guild Name") { mes "Sorry, you are not allowed to talk to me."; close; } // rest of the code that will be executed by the players }
  9. since the rebel class skills have not been implemented in Hercules yet, it is a normal behavior that you can't use any of them
  10. yeah these files shouldn't be there anyway, the fault is probably your Lua files pointing it wrong
  11. please provide MORE information, like: emulator pre-re or re client version video showing the issue
  12. I don't really think so, but who knows, it may be useful someday
  13. the easiest way is to use a client that supports it by default (like 2019-05-30aRagexe), it seems that you are trying to use the new menu image resources with an old client that still displays the menu the old way
  14. that is perfect! thank you so much
  15. So I was thinking about a mercenary to help new players, but our database is kinda limited on that, they are not really useful as "buffers", they don't even heal, so I was thinking about using the: I wanted to use it to copy, for example, one of the following: an acolyte, a priest, a high priest or an archbishop... but since the player (support that will be cloned) must exist and be online, I have no idea how to do that... any ideas?
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.