Jump to content
  • 0

Celestial Shield


Question

Posted (edited)

Hello guys. I need help to change the effect of celestial shield skills. I want to allow use of mana/hp pots and heal skills on the target being affect by the skill.

 

Thank you in advance!

Edited by tiguz

8 answers to this question

Recommended Posts

  • 0
Posted (edited)

he want the second one when a player has celestial shield to use mana potion

all this thing is about cardinals when they using celestial shield they cannot use mana potions

you are spamming the potion but nothing happens until celestial shield ends.

 

Then it's easy....

 

data\scripts\handlers\effecthandlers\ManaHeal.java

 

 

 

L2Character target = info.getEffected();

-  if ((target == null) || target.isDead() || target.isDoor() || target.isInvul())

+  if ((target == null) || target.isDead() || target.isDoor())

  {

   return;

  }

+  if (target.isInvul())

 + {

+   if (info.getSkill() != null)

+   {

+    if (info.getSkill().getId() != 10001) //Mana potion skill ID

+    {

+     return;

+    }

+   }

+    else

+   {

+    return;

+   }

+  }

  double amount = _power;

...

...

...

 

 

Edited by Solomun
  • 0
Posted

Can u define what exactly you want with more details? There are 2 scenarios here.

 

1) When a player use mana potion while he is under Celestial Shield effect, effect doesn't stop.

2) When a player has Celestial Shield certification and use mana potion, the potion gives him mana.

 

Can u let us know which one of this you wanna do? :P

  • 0
Posted

Can u define what exactly you want with more details? There are 2 scenarios here.

 

1) When a player use mana potion while he is under Celestial Shield effect, effect doesn't stop.

2) When a player has Celestial Shield certification and use mana potion, the potion gives him mana.

 

Can u let us know which one of this you wanna do? :P

 

he want the second one when a player has celestial shield to use mana potion

all this thing is about cardinals when they using celestial shield they cannot use mana potions

you are spamming the potion but nothing happens until celestial shield ends.

  • 0
Posted (edited)

Yes, when in pvp the cardinals cannot use mana pots if they have celestial shueld on, so they run out of mana in 2 secs =P

Also for olympiad, when you use celestial skill or augment, it doesnt let you heal, cause it blocks everything, and I want to allow healing skills and potions through celestial shield.

 

Well in l2jfrozen interlude its a bit different the code:

L2Character target = null;
 
for (final L2Object target2 : targets)
{
target = (L2Character) target2;
 
 if ((target == null) || target.isDead() || target.isDoor() || target.isInvul())
continue;
 
*So i just removed target.isInvul()) 
Lets see if it will work.
 
Edit: Well, its working just by removing  target.isInvul()). I didnt add anything of the code you gave me, I just removed that part. Is it ok or I need to actually add the code? I did the same with Heal.java and now I can heal myself over celestial shield.
Edited by tiguz
  • 0
Posted (edited)

 

Yes, when in pvp the cardinals cannot use mana pots if they have celestial shueld on, so they run out of mana in 2 secs =P

Also for olympiad, when you use celestial skill or augment, it doesnt let you heal, cause it blocks everything, and I want to allow healing skills and potions through celestial shield.

 

Well in l2jfrozen interlude its a bit different the code:

L2Character target = null;
 
for (final L2Object target2 : targets)
{
target = (L2Character) target2;
 
 if ((target == null) || target.isDead() || target.isDoor() || target.isInvul())
continue;
 
*So i just removed target.isInvul()) 
Lets see if it will work.
 
Edit: Well, its working just by removing  target.isInvul()). I didnt add anything of the code you gave me, I just removed that part. Is it ok or I need to actually add the code? I did the same with Heal.java and now I can heal myself over celestial shield.

 

I would suggest you to add my code, at least for ManaHeal. Just to isolate mana potion usage...

 

EDIT: Good job on Heal too, i didn't see you are looking to do the same for heal. I focused more on what @Celestine said :)

Edited by Solomun
  • 0
Posted

Is it ok or I need to actually add the code?

It's ok, easiest and clean way to let them use mana / get heal.

Guest
This topic is now closed to further replies.


  • Posts

    • Both are in-game bots. I'm looking for an out-of-game bot ((one that doesn’t require the L2 client).     Hmm, never heard about this bot. Will check, thank you
    • 🎉 L2Mid is back! After a 3-year pause, we’re launching a new Interlude server based on the original Interlude client (old school 😉).   What to expect • The classic Interlude spirit • Old friends, rival clans, and returning legends • A season focused on pure nostalgia   This may be our final Interlude server. (maybe 😉) 🗓️ Opening: December 5, 2025 at 20:00 (GMT+2)   https://l2mid.com
    • Hello, i was wondering if there's a guide on how to add the enchanting armor glow system from  Ertheia or Lindvior to hi5?
    • I imported this file using Unreal Engine 2 Runtime, modified it, saved it back, and then placed it on the client. When I run the game and wear this back accessory, the client crashes!     2025.10.28 03:52:59 OS : Windows XP 5.1 (Build: 2600) CPU : GenuineIntel  Intel(R) Core(TM) i3-6100 CPU @ 3.70GHz @ 3697 MHz 1023MB RAM Video : NVIDIA GeForce GT 730 (3064) PosCode : TS4(273) -119:-62:-1474 4/1 [0] SkeletalMesh MFighter_Fuckl2jangel.MFighter_Fuckl2jangel: Serial size mismatch: Got 383399, Expected 383403 History: LoadObject <- (SkeletalMesh MFighter_Fuckl2jangel.MFighter_Fuckl2jangel 8376427==8376427/8376498 7993028 383403) <- ULinkerLoad::Preload <- PreLoadObjects <- UObject::EndLoad <- UObject::StaticLoadObject <- (Engine.Mesh MFighter_Fuckl2jangel.MFighter_Fuckl2jangel NULL) <- UMeshComponent::LoadMeshComponent <- UMeshContainer::UpdateMeshComponents <- APawn::UpdateMeshComponents <- User::UpdatePawnMeshContainerByItem <- User::UpdatePawnMeshContainer <- User::SetPawnResource <- NCPawnView_InvenItemWnd::OnRButtonDown <- NCVirtualWndMain::SetFocusingWindow <- NCVirtualWndMain::DispatchWndMsg <- NConsoleWnd::DispatchWndMsg <- NConsoleWnd::MasterConsoleEventProcess <- UEngine::InputEvent <- UWindowsViewport::CauseInputEvent <- UWindowsViewport::UpdateInput <- UViewport::ReadInput <- APlayerController::Tick <- ALineagePlayerController::Tick <- TickAllActors <- ULevel::Tick <- (NetMode=0) <- UMasterLevel::Tick <- TickLevel <- UGameEngine::Tick <- UpdateWorld <- MainLoop   I don't know what the reason is. Can you help me?
  • Topics

×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock