Jump to content
  • 0

[HELP] Custom killing spree system l2j server [/HELP]


Question

Posted

Hello, i got the source code for the custom killing spree system from Cobra which was for l2j free and i converted it for l2j server. The  only problem is the following: I configured it so that when someone had 30 pvp kills in a row, a "You are on a killing spree" message would show up on his screen and an announcement would be published on the global chat. Here is the thing. I inserted a code so that when you have 30 pvp kills in a row not only would a message appear but you'd also get hero status and on death this hero status would disappear but i failed. I compiled and i went ingame to test it ,everything worked fine except that when i was getting 30 pvp kills i could see the hero glow but others could not, they could only see it after a restart of their client. And also, when i was on death my hero glow would not disappear if i didnt restart my client. Here is the code in the file L2PcInstance:

+private int impro = 0;
    public void increasePvpKills()
    {
    	 + impro++;
    	            
    	           +switch(impro){
               
    	         
    	      +case 30:
    	        + ExShowScreenMessage case30 = new ExShowScreenMessage("You reached 30 killing spree!", 10000);
    	         +sendPacket(case30);
    	         +Announcements.getInstance().announceToAll("Player  " + getName() + " Is On a Killing Spree Someone Stop Him");
    	         +setHero(true);   	        
    	        + break;
    	             + default:
    	              + ;
    	           + }

 

 

// Check if the player is dead
        if (isDead())
        {
        	+impro = 0;
        	+setHero(false);
        	abortCast();

 

Anyone got an idead of how to fix this? Thanks!

4 answers to this question

Recommended Posts

  • 0
Posted

is this the code for sending the users data to the server? or is there anything else like sendPacket(setHero); ? i tried to build a new method that would connect with isHero but didnt work out

  • 0
Posted

broadcastUserInfo() send player informations both for player (CharInfo packet) and for his knownlist (broadcast UserInfo). Both problems you said can be linked to a miss of that method. In the end of setHero() method, just add that line :

broadcastUserInfo();

 

If it works I'm glad, if it doesn't, drop that line and search anywhere else. I got no other idea.

 

Btw the switch for one case isn't easy to read (I know you made it like that because Cobra code was using it), just use following if you got only one case :

if (impro == 30)
{
    	         sendPacket(new ExShowScreenMessage("You reached 30 killing spree!", 10000));
    	         Announcements.getInstance().announceToAll("Player  " + getName() + " Is On a Killing Spree Someone Stop Him");
    	         setHero(true);
}

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...