-
Notifications
You must be signed in to change notification settings - Fork 434
Fountain Enemy fix #1428
base: indev
Are you sure you want to change the base?
Fountain Enemy fix #1428
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All of the changes here are fairly odd and cannot be accepted.
The behavior of the Fountain Turret is one which should be scripted, not designed into the system.
@@ -1190,7 +1190,11 @@ public void AddBuff(IBuff b) | |||
_game.PacketNotifier.NotifyNPC_BuffAdd2(b); | |||
} | |||
// Activate the buff for BuffScripts | |||
b.ActivateBuff(); | |||
for(int i = 0; i < b.MaxStacks; ++i) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
MaxStacks is meant to be used inside each buff script for specific stacking behavior, and the only buffs which stack that should be activated multiple times are those with a BuffAddType
of STACKS_AND_OVERLAPS
(and that functionality is already implemented).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Although, in order to OnActivate get properly triggered multiple times, you have to give multiple calls or adding 1 stack.
OnActivate gets triggered only once regardless of how many buffs you're adding.
On other note, OnDeactivate also gets triggered only once regardless of many stacks the buff has.
Maybe we should have a few extra Functions in BuffScripts?
- OnAddStack(int stacks)
- OnRemoveStack(int stacks)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Currently we have OnAllowAddBuff
which should satisfy OnAddStack
, but since we don't have an equivalent for OnRemoveStack
it should be fine to add.
@@ -40,7 +40,7 @@ public void Update(float diff) | |||
{ | |||
if (champion.Team != Team) | |||
{ | |||
continue; | |||
champion.Stats.CurrentHealth -= 5000; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The behavior of the Fountain Turret is one which should be scripted, not designed into the system.
Fixed the issue where enemy champions can walk into your fountain without taking damage.