Jump to content
  • 0

Latest Revision Ctf Errors..!


Question

Posted

Hello... so i updated my pack (L2j) with the latest revision (skill and effect system complete rework)

and i have these problems on CTF.java:

 

for (AbstractEffect e : summon.getAllEffects())
{
if (e != null)
{
e.exit();
}
}
 
also i've solved an error by my own but didn't test it... is it ok?

AbstractEffect eInvisible = _player.getFirstEffect(L2EffectType.HIDE);
 
to
 
AbnormalType eInvisible = AbnormalType.HIDE;

i will appreciate your help! :)

Recommended Posts

  • 0
Posted (edited)

What about changing AbstractEffect to L2Effect? Last rev of unstable or stable...?

Edited by ^Wyatt
  • 0
Posted (edited)

What about changing AbstractEffect by L2Effect? Last rev of unstable or stable...?

unstable... and L2Effect renamed with AbstractEffect..!

Edited by xXObanXx
  • 0
Posted

Replace the whole loop for :
 

summon.stopAllEffects();

Finale if you want to access getEffectList(), and notably if you know it's a buff, debuff, etc, you should access it via the internal map. For instance, retrieveing all buff effect types should be called like that :

summon.getEffectList().getBuffs().values()

An important note, it returns BuffInfo type.

  • 0
Posted (edited)

Oh shit, the loop's purpose was to just stopAllEffects() ? dafuq I should start reading, just do what tryskell said.

I thought it had some checks  :rage:

Edited by ^Wyatt
  • 0
Posted (edited)

Replace the whole loop for :

 

summon.stopAllEffects();

Finale if you want to access getEffectList(), and notably if you know it's a buff, debuff, etc, you should access it via the internal map. For instance, retrieveing all buff effect types should be called like that :

summon.getEffectList().getBuffs().values()

An important note, it returns BuffInfo type.

correct me if i'm wrong... is it ok?

 

from this:

if (player.getSummon() != null)
{
L2Summon summon = player.getSummon();
for (BuffInfo e : summon.getEffectList().getEffects())
{
if (e != null)
{
e.stopAllEffects(false);
}
}

if (summon instanceof L2PetInstance)
{
summon.unSummon(player);
}
} 

to this:

if (player.getSummon() != null)
{
L2Summon summon = player.getSummon();
summon.stopAllEffects();
summon.getEffectList().getBuffs().values();

if (summon instanceof L2PetInstance)
{
summon.unSummon(player);
}
}
Edited by xXObanXx
  • 0
Posted

Haha :D.

 

About HIDE stuff, what is it supposed to do ? What is the original code, what do you want to do ?

about hide i replaced the original code with this

AbnormalType eInvisible = AbnormalType.HIDE;

(didn't test it yet)

  • 0
Posted (edited)

You probably want to do :

final L2Summon summon = player.getSummon();
if (summon != null)
{
    // Unsummon if it was a pet, otherwise clean current effects.
    if (summon.isPet())
        summon.unSummon(player);
    else
        summon.stopAllEffects();
}

- Latest L2J don't use instanceof anymore. You still can use, but well.

- No use to clean effects on pets as you unsummon them (not useful).

 

About

summon.getEffectList().getBuffs().values();

I was simply saying effects have been reworked, and now you can use preformated data (in that case, it returns current buffs effects from the summon). It hasn't to be part of your code. I just gave an exemple to retrieve active buffs effects. And btw you lacked a :

List<BuffInfo> list = summon.getEffectList().getBuffs().values();

 to store it... What you did was useless, if not worst :D.

 

About hide, I want original code and where it is used. What you did is wrong. Before the point of that code was to retrieve if player was under a HIDE effect, now you messed.

Edited by Tryskell
  • 0
Posted (edited)

 

About hide, I want original code and where it is used. What you did is wrong. Before the point of that code was to retrieve if player was under a HIDE effect, now you messed.

Original line:

L2Effect eInvisible = _player.getFirstEffect(L2EffectType.HIDE);

replaced with:

AbnormalType eInvisible = AbnormalType.HIDE;

the whole code is:

                // If player is invisible, make them visible
		if (_player.getAppearance().getInvisible())
		{
			@SuppressWarnings("unused")
			AbnormalType eInvisible = AbnormalType.HIDE;
		}
Edited by xXObanXx
  • 0
Posted

@Tryskell

I don't think it's useless to remove buffs from pets that will be unsummoned. If they didn't change it, as far as I remember... in l2jserver when you unsummon a pet, buffs are stored.

  • 0
Posted

@Tryskell

I don't think it's useless to remove buffs from pets that will be unsummoned. If they didn't change it, as far as I remember... in l2jserver when you unsummon a pet, buffs are stored.

 

It's a ctf, and that section is probably sent when character enters the event. There's no use to clean pet buffs. The only stuff to verify is the possibility to get a pet while being in ctf event (no possibility to summon).

 

@topic author, I want the use of eInvisible.

Guest
This topic is now closed to further replies.


  • Posts

    • Website: https://l2aurum.com/ Discord: https://discord.gg/ngaD9DJRjE   Dear Players, We are excited to announce that the x300 Summer Season Beta server will open on 19‑06‑2026 at 20:00 GMT+2. As previously mentioned, there will be no wipe and no account deletion. All accounts, characters, items, and progress from Season 1 will remain completely safe. To ensure a fair and competitive start for new players, all Season 1 accounts will be temporarily locked. The official Summer Season launch will take place on 26‑06‑2026 at 20:00 GMT+2. A few weeks after the official launch, Season 1 accounts will be unlocked so previous players can access their characters and continue their journey. This approach allows new players to enjoy a fresh start while preserving the progress and achievements of our long-term community. Thank you for your continued support, and we look forward to welcoming everyone to the new Summer Season. L2Aurum Team   Explore L2 Aurum Features Discover the Enhancements that set us apart!   Information Server Version: Interlude - PvP Server Client Interface: Unique Interface   Rates     Additional Features and changes When you create a new character, you will start in Giran Harbor at Level 1, equipped with full No-Grade items. Auto Farm is available for free for 2 hour daily without VIP. VIP players receive 4 hours of Auto Farm per day. The Auto Farm time resets with the server restart at 5:30 AM. Status Noblesse: Last hit Barakiel. Player Spawn Protection: 7 seconds. Geodata + Pathnodes: Enabled. All commands are available in the Community Board. Maximum 3 Bishops Per Party: Enabled. Boss Protect - Anti-Zerg: Enabled. Shift + click on monsters to see the droplist. Offline shop. Mana Potion Restores 1000 MP with a cooldown of 8 seconds. Inventory Slots: 250.   Weapon Information Lv1 Black Chaotic Weapons. Lv2 Aurum Weapons.   Armor Information Lv1 Blue Apella Armor. Lv2 Aurum Apella Armor. Misc additions Accessories +50 and +150 pdef|mdef. Tattoos: Resolve | Soul | Avadon. Agathions: Cosmetic only (no stats).   Buffs / Dances / Songs / Prophecies Duration: 2 hours. Total Buff Slots: 32 + 4 (Divine Inspiration). Vote Buff: You must vote on 3 of 6 vote sites to get the vote buff blessing. Castle Reward Every clan that captures a castle receives the castle owner clan blessing buff. To receive it, the clan leader must be online.   Events   Raid Bosses Epic Bosses Final Bosses     For full server information please visit website PvP: Server Features   Website: https://l2aurum.com/ Discord: https://discord.gg/ngaD9DJRjE      
  • Topics

×
×
  • Create New...

Important Information

This community uses essential cookies to function properly. Non-essential cookies and third-party services are used only with your consent. Read our Privacy Policy and We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue..