In response to Darkjohn66
The fact that you think you need to set up one slot and then copy-pasta code four more times is showing you're not thinking about this the right way.

Give players whatever input options you want. Then, pass the result of that input to the save or load procedure. That's it. No switch statements, nothing fancy, just two lines of code.
In response to Garthor
Ok this is working good. I beleive it is what you meant. Here is what I have. But when I uncomment Load(I get the same effect whether or not slot is in parenthesis, but to my (possibly unreliable) knowdlege it shouldn't matter).

mob/verb/Newchar()
set hidden = 1
slot = input("Select a slot to create a new character in(old ones will be overwritten if selected)", "New Character", slot) in list("Nevermind",1,2,3,4)
if(slot == "Nevermind")
slot = 0
return
else
// client.Load()
winshow(src, "newload", 0)
winshow(src, "default", 1)
..()

I get this runtime error:
<font color=green>
runtime error: bad client
proc name: Newchar (/mob/verb/Newchar)
usr: Darkjohn66 (/mob)
src: Darkjohn66 (/mob)
call stack:
Darkjohn66 (/mob): Newchar()
</font color=green>
In response to Darkjohn66
src is no longer the player once Load() is called. Probably easiest to just do the winshow()s beforehand.

You also aren't passing an argument to Load() like I thought I made it rather clear you should.

Also: ..() is useless there.
In response to Garthor
Hmm.
Ok, well, this doesn't work at all, once again I am stuck, but I beleive I am slowly getting closer/better. No runtime errors, just doesn't work at all, and when I load my statpanel goes black and I cannot see any of the verbs in it and I can just barley see the tip of a tab if I remember correctly.
mob/verb/Newchar()
set hidden = 1
slot = input("Select a slot to create a new character in(old ones will be overwritten if selected)", "New Character", slot) in list("Nevermind",1,2,3,4)
if(slot == "Nevermind")
slot = 0
return
else
switch(alert("Are you sure?",,"No","Yes"))
if("Yes")
winshow(src, "newload", 0)
winshow(src, "default", 1)
// client.Load(slot)
if("No")
return
else
return
mob/verb/Loadchar()
set hidden = 1
slot = input("Select a slot to Load", "Loading...", slot) in list("Nevermind",1,2,3,4)
if(slot == "Nevermind")
slot = 0
return
else
switch(alert("Are you sure?",,"No","Yes"))
if("Yes")
winshow(src, "newload", 0)
winshow(src, "default", 1)
client.Load(slot)
if("No")
return
else
return
mob/verb/Delchar()
set hidden = 1
alert("Currently disabled. Just create a new character over one already made.",,)
var/tmp/slot = 0
//mob/proc/load()
var/savefile/F
client
proc
Save(slot)
F = new("Saves/[ckey].sav")
F["[slot]"] << mob
Load(slot)
F = new("Saves/[ckey].sav")
F["[slot]"] >> mob
Delete(slot)
Del(F["[slot]"])

mob
Write(F)
..()
F["x"] << x
F["y"] << y
F["z"] << z
Read(F)
..()
loc = locate(F["x"], F["y"], F["z"])
return


mob/Logout()
view () << "<small>[src.ckey] has logged out!"
..()
client/Del()
Save(slot)
..()

Page: 1 2