Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

[EO Prospekt Source] Spell Bug/ Error


chamster
 Share

Recommended Posts

So this problem deals with the Spells' Interval. When an Interval is set I only get the First interval to work than the Rest become 0's.

**For Example:**

**I set Heal vital: 20, Duration to 10 sec and interval to 2 sec.**

**(1) This is what Happens:**

Time (second):  0       1           2          3            4           5           6          7          8          9        10

Vital Healed:    +20    +0        +0        +0           +0        +0          +0        +0        +0        +0        +0

**(2) This is whats suppose to happen ( I think):**

Time (second):  0       1        2           3           4           5           6           7           8           9        10

Vital Healed:    **+20**    +0     **+20**        +0       **+20**        +0         **+20**        +0      **  +20   **     +0      **+20**

–---------> so for every 2 second it heals 20HP for a 10 secs... So its suppose to be HOT (healing over time) but instead **(1)** is what is happening….

Unless the system is working correctly and i'm just thinking diffrenet?!?! Plz help me and thank you....

Or am I inputing the values in the wrong place?!?

Heres the HOT source:

```

Public Sub HandleHoT_Player(ByVal Index As Long, ByVal hotNum As Long)
With TempPlayer(Index).HoT(hotNum)
If .Used And .Spell > 0 Then
' time to tick?
If timeGetTime > .Timer + (Spell(.Spell).Interval * 1000) Then
SendActionMsg Player(Index).Map, "+" & GetPlayerSpellDamage(.Caster, .Spell, HP), BrightGreen, ACTIONMSG_SCROLL, Player(Index).x * 32, Player(Index).y * 32
Player(Index).Vital(Vitals.HP) = Player(Index).Vital(Vitals.HP) + GetPlayerSpellDamage(.Caster, .Spell, HP)
.Timer = timeGetTime
' check if DoT is still active - if player died it'll have been purged
If .Used And .Spell > 0 Then
' destroy hoT if finished
If timeGetTime - .StartTime >= (Spell(.Spell).Duration * 1000) Then
.Used = False
.Spell = 0
.Timer = 0
.Caster = 0
.StartTime = 0
End If
End If
End If
End If
End With
End Sub

```
Link to comment
Share on other sites

Isnt it 3,33 healing per 2 sec? Cuz its like vital / time and it goes into interval

**example**

Time (second):  0       1        2           3           4           5           6           7           8           9        10

Vital Healed:    **+3,33** +0   **+****3,33**      +0      **+****3,33**        +0       **+****3,33**      +0   **  +****3,33**    +0      **+****3,33**

smtn like that?
Link to comment
Share on other sites

> Isnt it 3,33 healing per 2 sec? Cuz its like vital / time and it goes into interval
>
>  
>
> **example**
>
> Time (second):  0       1        2           3           4           5           6           7           8           9        10
>
> Vital Healed:    **+3,33** +0   **+****3,33**      +0      **+****3,33**        +0       **+****3,33**      +0   **  +****3,33**    +0      **+****3,33**
>
> smtn like that?

ahh, so the input value for vital is the Total outcome of Hp heal at the end of the tick.
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...