Mirage Source
Heal MP & SP Tiles (tested) - Printable Version

+- Mirage Source (https://mirage-engine.uk/forums)
+-- Forum: Mirage Source (Nostalgia) (https://mirage-engine.uk/forums/forumdisplay.php?fid=61)
+--- Forum: Archive (2006-2011) (https://mirage-engine.uk/forums/forumdisplay.php?fid=18)
+---- Forum: General (https://mirage-engine.uk/forums/forumdisplay.php?fid=17)
+---- Thread: Heal MP & SP Tiles (tested) (/showthread.php?tid=2211)



Heal MP & SP Tiles (tested) - DarkX - 01-10-2008

Ok I am out of town so I can not use my computer, but I figured I would try to right up a tut, but since I do not have a computer around me. So I can not test it out, so I am going to post it and hope someone will test it out. If not I will let you know when I get back in town

Mp Attribute Tile
:: SERVER SIDE ::
In modTypes, add:
Code:
Public Const TILE_TYPE_MP = 11
In modGamelogic, go to Sub PlayerMove, and add:
Code:
If Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index), GetPlayerY(Index)).Type = TILE_TYPE_MP Then

Call SetPlayerMP(Index, GetPlayerMaxMP(Index))
Call SendMP(Index)
Call PlayerMsg(Index, "You feel a sudden rush of energy through your body as you regain mana!", BrightBlue)
End If

:: CLIENT SIDE ::
In modTypes, add:
Code:
Public const TILE_TYPE_MP = 11
In modGamelogic, find:
Code:
If .Type = TILE_TYPE_BLOCKED Then Call DrawText(TexthDC, x * PIC_X + 8, y * PIC_Y + 8, "B", QBColor(BrightRed))
Beneath that, add:
Code:
If .Type = TILE_TYPE_MP Then Call DrawText(TexthDC, x * PIC_X + 8, y * PIC_Y + 8, "MP", QBColor(BrightGreen))
Find:
Code:
If frmMirage.optWarp.Value = True Then
.Type = TILE_TYPE_WARP
.Data1 = EditorWarpMap
.Data2 = EditorWarpX
.Data3 = EditorWarpY
End If
Beneath that, add:
Code:
If frmMirage.optMP.Value = True Then
.Type = TILE_TYPE_MP
.Data1 = 0
.Data2 = 0
.Data3 = 0
End If
Ok go in to frmMirage, or frmMapEditor which everone that you have and make a option button call it optMP and your done.
Also side note, if you have converted to having frmMapEditor change the above code to:
Code:
If frmMapeditor.optMP.Value = True Then
.Type = TILE_TYPE_MP
.Data1 = 0
.Data2 = 0
.Data3 = 0
End If

Ok here's a extra code set for the stamina
SP Attribute Tile
:: SERVER SIDE ::
In modTypes, add:
Code:
Public Const TILE_TYPE_SP = 12
In modGamelogic, go to Sub PlayerMove, and add:
Code:
If Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index), GetPlayerY(Index)).Type = TILE_TYPE_SP Then

Call SetPlayerSP(Index, GetPlayerMaxSP(Index))
Call SendSP(Index)
Call PlayerMsg(Index, "You feel a sudden rush of energy through your body as you regain Stamina!", BrightYellow)
End If

:: CLIENT SIDE ::
In modTypes, add:
Code:
Public const TILE_TYPE_SP = 12
In modGamelogic, find:
Code:
If .Type = TILE_TYPE_BLOCKED Then Call DrawText(TexthDC, x * PIC_X + 8, y * PIC_Y + 8, "B", QBColor(BrightRed))
Beneath that, add:
Code:
If .Type = TILE_TYPE_SP Then Call DrawText(TexthDC, x * PIC_X + 8, y * PIC_Y + 8, "SP", QBColor(BrightYellow))
Find:
Code:
If frmMirage.optWarp.Value = True Then
.Type = TILE_TYPE_WARP
.Data1 = EditorWarpMap
.Data2 = EditorWarpX
.Data3 = EditorWarpY
End If
Beneath that, add:
Code:
If frmMirage.optMP.Value = True Then
.Type = TILE_TYPE_SP
.Data1 = 0
.Data2 = 0
.Data3 = 0
End If
Ok go in to frmMirage, or frmMapEditor which everone that you have and make a option button call it optSP and your done.
Also side note, if you have converted to having frmMapEditor change the above code to:
Code:
If frmMapeditor.optMP.Value = True Then
.Type = TILE_TYPE_SP
.Data1 = 0
.Data2 = 0
.Data3 = 0
End If

Ok Now here's the issue, I cannot remember wether or not there was a SETMAXMP or SP code so double check, and if needed take a clear look at the SETMAXHP code and duplicate it so that you have it. Please let me know if this code works if anyone could please test it.

And I know these are in the wrong place, but they are untested so I am not going to post them in the tutorials Forums if the mods want they can move them if these work.