ID:266368
 
verb
Build_Boat(turf/T as turf in oview(1))
var/mob/B
if(istype(T,/turf/water))
B=new /mob/Boats(T.loc)
B.owner=src.owner
var/charactername = input("What is your Boat's name?","Name",src.key)
B.name=charactername
src<<"You create a new boat!"
return


ok this is really making me mad!!!

I cannot figure out howcome it will not create a boat on the T!!!!

sigh :(
I need a break from my own code, so I'll redo yours:

mob/verb/Build_Boat()
var/L = get_step(src,src.dir)
if(istype(L,/turf/water))
var/mob/Boats/B = new(L)
B.owner = src.owner
B.name = input("What shall you name thy boat?","Name Thy Boat")
src << "Thy boat is completed, master!"
return
src << "Master, our boats only function on water!"
return

That should work... Might want to test it first though :o)
I get a kick out of games where everyone calls you "master"...
If fact, it might be fun if you could select your own title :o)

mob/verb/Build_Boat()
var/L = get_step(src,src.dir)
if(istype(L,/turf/water))
var/mob/Boats/B = new(L)
B.owner = src.owner
B.name = input("What shall you name thy boat?","Name Thy Boat")
src << "Thy boat is completed, [src.title]!"
return
src << "[src.title], our boats only function on water!"
return
src.title = Master, Lord, Mistress, Oh Great One, etc...
The main problem I see is you're telling it to create a boat, not in T, but in T.loc. T being a turf, this means, "the area in which T is located." If you want to create an object inside of something, be it obj, mob, or turf, all you have to do is specify the thing itself.
In response to Foomer
So do I.