ID:1901974
 
(See the best response by Ter13.)
Code:


Problem description: Don't really have code for this one. I feel the issue may lie in the new Appearance variable.

http://oi57.tinypic.com/2myu5u9.jpg

As seen in this picture. Upon loading the game, my player icon is duplicated along with his shadow. (http://www.byond.com/developer/Kidpaddle45/ShadowGenerator is what I'm going off for functioning shadows) I've taken a look at my load proc multiple times, and I'm not calling for anything that'd duplicate the player, however, after testing the issue further: Enabling/Disabling the shadows in the code fixes the issue--Which in term means no shadows at all.

If there are any tips on how to stop appearance from duping the icons, please let me know. All of my tests have been futile efforts.


You are going to have to show us some code. We can't help you otherwise.
Er, I linked the Shadow Generator in use already, but here is my Load Coding.

mob
proc
LoadCharacter(LoginID,F)
Read(F)
src.loc = locate(xco,yco,zco)
if(src.Dead||src.knockedout)
src.deathcount=0
src.health=0
src.stamina=0
src.view="25x20"
client.view=src.view
if(src.invisibility>0)
src.invisibility=0
src.cansave=1
src.PlayerAlreadyLoggedIn=1
src.sight &= ~BLIND
src.OOC = 1
src.loggedin=1
src.Frozen = 0
src.sight &= ~BLIND
src.firing = 0
src.resting = 0
src.AddBasicHud()
src.Check()
src.AutoSave()
src.density=1
Can you duplicate the issue in a smaller project and isolate the problem to a specific set of functions?

We need to reduce the number of unknowns.
Re-created the issue on a clean source. Using the library Kidpaddle provided. The issue still occurs.

mob/verb
Save()
usr.SaveK()
mob/verb
Load()
usr.LoadPlayer()
atom/movable/var
xco=0
yco=0
zco=0
mob/proc/SaveK()
var/firstletter=copytext(src.key, 1, 2)
var/savefile/F = new("Saves/[firstletter]/[src.key].sav")
src.xco = src.x
src.yco = src.y
src.zco = src.z
alert(src,"Saved")
Write(F)

mob
proc
LoadPlayer()
var/firstletter=copytext(src.ckey, 1, 2)
if(fexists("Saves/[firstletter]/[src.ckey].sav"))
var/savefile/F = new("Saves/[firstletter]/[src.ckey].sav")
alert(src,"Load")
Read(F)
src.client.perspective=MOB_PERSPECTIVE
src.client.eye = src
src.loc = locate(xco,yco,zco)


http://imgur.com/MW390Gj
Best response
A few unrelated points here:

1) You should never call write manually.

2) The xco/yco/zco variables are unnecessary for your saving.

30 You should never call read manually.

See this thread for corrections: http://www.byond.com/forum/?post=1898575#comment16044933


Okay, so there's a major problem with KidPaddle's demo.

atom/var/shadows should be tmp


There are a lot more problems with that demo than that, but that's what's causing your duplication for starters.

KidPaddle's shadow library is in need of serious work. For starters, it loops through every object in the world if you want to change the orientation of shadows... That's bad.

Second, it generates a ton of /icons when it doesn't even remotely need to.
Oh, I see. Thanks for pointing out the Save Issues though, never knew about that.