ID:138743
 
Code:
turf
water
name = "water"
icon = 'testicons.dmi'
icon_state = "water"
invisibility = 1
Entered(mob/M)
if(istype(M,/mob))
if(M.npc)
return
if(src.icon_state == "ice")
M.inwater = 0
M.icon_state = ""
return
else
M.inwater = 1
M.icon_state = "swimming"


Exited(mob/M)
if(istype(M,/mob))
if(src.icon_state == "ice")
M.inwater = 0
M.icon_state = ""
return
else
M.inwater = 0
M.icon_state = ""
else
return
Enter(mob/M)
if(istype(M,/mob))
if(M.npc)
return 0
else
return 1
if(istype(M,/obj/ship))
if(src.icon_state == "ice")
return 0
else
return 1

else
return 1


Problem description:
Well as you can see, i've made water and some stuff i want to do when entering and exiting water, as well as some restrictions.. now, this works perfectly fine, with one exception(other than maybe being inefficient). every mob or object on water is considered or acts as if it's not dense even if it is.

I suspect it is the Enter() proc that is overriding the normal functions of the game.. any solutions to this problem?
I was able to fix it, so now it's working properly. thx anyways.