darkess fix
This commit is contained in:
parent
15e8e95aa4
commit
f6f7f0250e
1 changed files with 12 additions and 11 deletions
|
@ -58,30 +58,31 @@ EndProcedure
|
|||
; Shadowmap
|
||||
Procedure CalculateShadow()
|
||||
Define X.i, Y.i
|
||||
Define MapX.i, MapY.i, Strength.i, CentercheckX.i, CentercheckY.i
|
||||
Define MapX.i, MapY.i, Strength.i, Centercheck.i, CentercheckX.i, CentercheckY.i
|
||||
|
||||
For X.i=0 To #SHADOW_RADIUS*2
|
||||
For Y.i=0 To #SHADOW_RADIUS*2
|
||||
MapX = (Player\X-#SHADOW_RADIUS) + X
|
||||
MapY = (Player\Y-#SHADOW_RADIUS) + Y
|
||||
For X.i=-#SHADOW_RADIUS To #SHADOW_RADIUS*2
|
||||
For Y.i=-#SHADOW_RADIUS To #SHADOW_RADIUS*2
|
||||
MapX = Player\X + X
|
||||
MapY = Player\Y + Y
|
||||
|
||||
CentercheckX = X - #SHADOW_RADIUS
|
||||
CentercheckX = X
|
||||
If CentercheckX < 0
|
||||
CentercheckX * -1
|
||||
EndIf
|
||||
CentercheckX = 5-CentercheckX
|
||||
|
||||
CentercheckY = Y - #SHADOW_RADIUS
|
||||
CentercheckY = Y
|
||||
If CentercheckY < 0
|
||||
CentercheckY * -1
|
||||
EndIf
|
||||
CentercheckY = 5-CentercheckY
|
||||
|
||||
If CentercheckX > CentercheckY
|
||||
CentercheckX = CentercheckY
|
||||
Centercheck = CentercheckX
|
||||
Else
|
||||
Centercheck = CentercheckY
|
||||
EndIf
|
||||
Centercheck = #SHADOW_RADIUS - Centercheck;
|
||||
|
||||
Strength = (255 / #SHADOW_RADIUS) * (CentercheckX+1)
|
||||
Strength = (255 / #SHADOW_RADIUS) * (Centercheck)
|
||||
|
||||
If MapX >= 0 And MapY >= 0
|
||||
If ShadowMap(MapX, MapY)\Strength < Strength
|
||||
|
|
Loading…
Reference in a new issue