| The following is code from my text mud game.  I was curious if there was a better way to write any of these? 
 note- axo means nothing just turn to 1 to term loop?? faster?
 
 
Function AddAlsohere(p.player)
	curr_id=0
	axo=0:xa=0
	While axo=0
	If area(p\curr_area)\ro[p\curr_room]\ro2[xa]=Null Then
	area(p\curr_area)\ro[p\curr_room]\ro2[xa]=New alsohere
	area(p\curr_area)\ro[p\curr_room]\ro2[xa]\alsoname$=Lower$(p\name$)
	area(p\curr_area)\ro[p\curr_room]\ro2[xa]\playerid=p\playerid
	p\alsoid=xa
	axo=1
	EndIf
	xa=xa+1
	Wend
	;writeLine p\stream, area(p\curr_area)\ro[p\curr_room]\ro2[p\alsoid]\alsoname$+" added ID: "+p\alsoid
End Function
 
 
 
Function DeleteAlsohere(p.player)
	xa=p\alsoid
	WriteLine p\stream, "Deleting ID: "+p\alsoid+" from "+area(p\curr_area)\ro[p\curr_room]\roomname$
	Delete area(p\curr_area)\ro[p\curr_room]\ro2[p\alsoid]
	xa=xa+1
	axo=0
	Print xa
	While axo=0
	If area(p\curr_area)\ro[p\curr_room]\ro2[xa]<>Null Then
	xa2=xa-1
	area(p\curr_area)\ro[p\curr_room]\ro2[xa2]=New alsohere
	area(p\curr_area)\ro[p\curr_room]\ro2[xa2]\playerid=area(p\curr_area)\ro[p\curr_room]\ro2[xa]\playerid
	area(p\curr_area)\ro[p\curr_room]\ro2[xa2]\alsoname$=area(p\curr_area)\ro[p\curr_room]\ro2[xa]\alsoname$
	playerx=area(p\curr_area)\ro[p\curr_room]\ro2[xa2]\playerid
	pl(playerx)\alsoid=xa2
	WriteLine pl(playerx)\stream, "Your also ID has been changed to "+p\alsoid
	Delete area(p\curr_area)\ro[p\curr_room]\ro2[xa]
	Else
	axo=1
	EndIf
	xa=xa+1
	Wend
End Function
 
 
 |