Jump to content
  • 0

Question

Posted

Hi everyone! Im Argentinian so, sorry my bad english!

 

In one sv that i played some days i've saw a good addon!

 

Its somethink like a Newbie Tutorial, in lv 6 appears a window that offers you a buffer, at lv 10 appears another tutorial offering a teleport to Elven Ruins. Lv 20: Again a popup asking to change class, offering D set, weapon and shots AND ask if u want to teleport another farm zone.

 

Somebody know that addon? I dont want to create all theese for myself, its too much code xD

 

Here one pick:

image.jpg

 

Recommended Posts

  • 0
Posted

I don't remember such thing at the shares section. You have to create the event listener on your own. :lol:

  • 0
Posted (edited)

i think is not java. is html and system , he create a nice html and add custom icon . how to create custom icon? here -> http://www.maxcheaters.com/topic/168739-how-to-create-your-own-icon-how-to-import-it/

and teleport with sql 

Edit : i think u will need java only for the name

Edited by kris131
  • 0
Posted (edited)

Just go at the method that happen when player level up (Search it i dont even remember where it is, no even have eclipse opened),

add a void called checkSupportTutorial(player);  example

and make a simple code like:

 

int lvl = player.getLevel();

switch (lvl)

{

  case 1:

    (inside here put some html ,check other function how to send html packet to player)

   break;

 

  case 10:

    (inside here put some html ,check other function how to send html packet to player)

    break;

}

 

and the action inside html make it like bypass -h supportPlayer 1    for example

and go at RequestByPassToServer.java add it like...

 

if (event.startsWith("supportPlayer")

{
     int endOfId = _command.indexOf(' ', 13);   (13 is the size of command)

     int id  = id = _command.substring(13, endOfId);

    

     switch(id)

     case 1:

          // things that happen inside here when the button pressed, like give items or teleport or buffs or idk...

          // idk maybe player.teleToLocation(x,y,z); 

     case 2:

          // things that happen inside here when the button pressed, like give items or teleport or buffs or idk...

          // idk maybe player.teleToLocation(x,y,z); 

    case 3:

          // things that happen inside here when the button pressed, like give items or teleport or buffs or idk...

          // idk maybe player.teleToLocation(x,y,z); 

   etc

}

 

You can check your source  to see how it send a html packet to player

its simple its like

 

StringBuilder sb = new StringBuilder(200);
sb.append("<html><body>");
sb.append("Some silly things<br1>");
sb.append("More things<br1>");
sb.append("</body></html>");
final NpcHtmlMessage pck = new NpcHtmlMessage(0, 1, sb.toString());
activeChar.sendPacket(pck);
Edited by AccessDenied
  • 0
Posted (edited)

also check the case on deleveling a character and allow or dissallow him to use that feature once again

thats easy and you dont even need to store to db its useless if it give basic gear or buffs.. 

 

just add a method at L2PcInstance.java

 

private boolean _receivedSupport;

 

public void setReceivedSupport(boolean h)

{

   _receivedSupport = h;

}

 

public boolean isReceivedSupport()

{

   return _receivedSupport;

}

Edited by AccessDenied
  • 0
Posted

thats easy and you dont even need to store to db its useless if it give basic gear or buffs.. 

 

just add a method at L2PcInstance.java

 

private boolean _receivedSupport;

 

public void setReceivedSupport(boolean h)

{

   _receivedSupport = h;

}

 

public int isReceivedSupport()

{

   return _receivedSupport;

}

What happens on re-log? :lol:

  • 0
Posted (edited)

What happens on re-log? :lol:

well as i said is not that important... i mean is basic gear and buffs.. come on..

 

in the worst case you make a map and store objectid of the player and his current state

 

and on enterworld  it check if the map contain his key and  activeChar.setReceivedSupport(true);

Edited by AccessDenied
  • 0
Posted (edited)

Please pest post more exploitable shitcode

Exquse me i dont even use eclipse to check syntax or anything but there you go..

 

static Hashtable<Integer, Integer> _hashTable = new Hashtable<Integer,Integer>(); 
public static HashMap<Integer, Integer> _StartingSupport = new HashMap(_hashTable);
 
 
public static void CheckPlayer(L2PcInstance player)
{
 if (!_StartingSupport .isEmpty() && _StartingSupport .containsKey(player.getObjectId()))
 {
      player.setReceivedSupport(true);
    // or idk what.
 }
}
 
Why no? Avoid store at db and is a  nice solution until server restart.. which again is not needed cause we speak for basic gear and basic buffs.. 
 
the 2nd integer is used to check the current state actualy  1 for the 1st window  2 for the 2nd window 3 for the rd window just to know in which window player is when he login 
Edited by AccessDenied
  • 0
Posted

well as i said is not that important... i mean is basic gear and buffs.. come on..

 

in the worst case you make a map and store objectid of the player and his current state

 

and on enterworld  it check if the map contain his key and  activeChar.setReceivedSupport(true);

Ok, what about server restart then? :D

  • 0
Posted (edited)

Ok, what about server restart then? :D

Fuck me >.>  <.<  

 

go to db then -.- and load the info if you like db con that much >.> <.<

I'm sure afterwards you gonna say

 

Ok, what about earth desctruction?  -.-

Edited by AccessDenied
  • 0
Posted

Fuck me >.>  <.<  

 

go to db then -.- and load the info if you like db con that much >.> <.<

It could be simple column like 'level_reached' in the characters table, which you can load on character login, and update on character logout. No extra performance needed. :lol:

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...