Post by Kamuna on Feb 7, 2014 15:30:50 GMT
Though I'll usually have more in my notebook, I'll try to keep you guys up to date with the planned features here.
Planned:
ALL PLANNED FEATURES COMPLETED.
Done:
wprint(text)
printto(to,text)
printtohead(to,headobj,text)
ent_create(objtype,x,y,z,sx=0,sy=0)
self_create(objtype,obj)
contents_create(objtype,obj)
ent_delete(obj)
ent_locdelete(objtype,x,y,z)
setcustommode(cname,req,url,music,picture,gamestartcode,gameendcode,roles=1,author="")
wait(time)
tick_lag()
setkiller(name)
setcustomroleX(name,multi=0,forcerole=2)
showkiller(text)
showcustomroleX(text)
get_haircolor(obj)
length(list/text/file)
list(BYOND)
addoverlay(obj,objtype or atom)
addcustomoverlay(obj,icon,icon_state)
removeoverlay(obj,icon,icon_state="any")
removeoverlays(obj)
checkoverlay(obj,icon,icon_state="any")
checkoverlays(obj)
cleanweapon(weapon)
bloodyweapon(weapon)
findinlist(find,list)
GetWatcher()
GetWatchers()
GetLoggedIn()
GetPlayer()
GetPlayers()
checkmode()
gameinprogress()
gameinprogressnumber()
spawn(num,code)
gameover()
numofplayers()
list_cycle(find,list,code)
prob()
playmusic(who,music,volume=100)
playsound(who,sound,volume=100)
playambience(who,ambience,volume=100)
set_tapesmessage(text)
Uploading Dependencies
String functions: strcat(text), strcpy(T,Start=1,End=0).
hurt(obj,num,uselethality=0)
heal(obj,num,uselethality=0)
file2text(file)
rand(BYOND)
text2file(text,filename,fileextension,replaceall=0) Only supports .txt and .ms files.
get_contents(obj)
get_name(obj)
get_alias(obj)
get_permalias(obj)
get_realname(obj)
get_key(obj)
get_ckey(obj)
set_resultstag(obj,text)
world variable
get_worldcontents()
checktime()
GetDead()
lockdoor(doortype)
unlockdoor(doortype)
GetIngame()
pick(BYOND)
GetAlive()
checknumofroles(obj,expanding)
list(expanding)
set_mstag(obj,anything,tagnum=1)
check_mstag(obj,tagnum=1)
find_mstag(anything,tagnum=1)
find_text_in_mstag(text,Start,End,tagnum=1)
findtext(BYOND)
set_mscode(obj,text)
check_mscode(obj)
run_mscode(obj)
run_mscode_on(obj,target)
run_mscode_func(obj)
set_usecode(useableobj,text) //user is the person who activated the usecode.
get_usecode(usableobj)
set_health(obj,num)
set_stamina(obj,num)
set_grief(obj,num)
knockout(obj, time=100)
get_health(obj)
get_stamina(obj)
get_grief(obj)
view(Dist,Center) //Camera view: 10 Dist
range(Dist,Center)
hearers(Dist,Center)
permadeath(obj)
oview(Dist,Center)
orange(Dist,Center)
hiddenoverlay(attach,viewer,icon,iconstate=null,alpha=255,pixelx=0,pixely=0)
ohearers(Dist,Center)
forceemote(obj)
forcesay(obj)
forceshout(obj)
forcesuicide(obj)
set_alias(obj,text)
set_permalias(obj,text)
set_realname(obj,text)
set_haircolor(obj,text)
set_name(obj,text)
set_headicon(obj,icon) //Head icons must be 24x14 in size and contain an icon_state matching the name of the player's icon without the .dmi
get_icon(obj)
get_headicon(obj)
get_madokaheadicon(obj)
set_role(obj,role) //See the Set Custom Roles in the Functions menu for the roles.
set_RPgender(obj,text)
get_RPgender(obj)
get_realgender(obj)
set_realgender(obj,text)
set_character(obj,objtype)
set_icon(obj,icon)
set_density(obj,num)
get_density(obj)
invisibility(obj,num)
see_invisible(obj,num)
get_invisibility(obj)
get_see_invisible(obj)
create_mob(name,icon,icon_state,x,y,z,sx=0,sy=0,density=1,life=100,stamina=100,grief=0,hasplayercode=0,code="")
create_obj(name,icon,icon_state,x,y,z,sx=0,sy=0,density=0,code="",usecode="")
create_item(name,icon,icon_state,x,y,z,sx=0,sy=0,type="",weight=0,takeable=1,droppable=1,throwable=1,throwrange=3,throwspeed=6,rotationspeed=6,emessage="",code="",usecode="",unsearchable=0,onpickup="",ondrop="",onthrow="",onsteal="")
[All "on" arguments (ex. ondrop) use holder variable for the person who has the item, and onsteal also uses stolen for the person who had the item.]
create_weapon(name,icon,overlayicon,boverlayicon,x,y,z,sx=0,sy=0,type="",weight=0,takeable=1,droppable=1,throwable=1,throwrange=3,throwspeed=6,rotationspeed=6,damage=0,lethal=0,drain=1,ver="hits",soundeffect='punch.wav',range=18,delay=12,stun=12,usecount=null,paintcolor=null,bloody=0,specificdelaytime=0,specialver="a",emessage="",code="",usecode="",unsearchable=0,onpickup="",ondrop="",onthrow="",onsteal="",onequip="",onunequip="",effecticon='weffects.dmi',anitime=null,randomeffect=0,effectoffset_x=0,effectoffset_y=0,weapontype=list(),dualwieldable=0,doverlayicon=null,dboverlayicon=null,knocksdown = 0,attackstunreduction = 50,hitstunreduction = 100, knockback = 8)
create_verb(obj,name,code,desc="",category="Commands")
add_verb(obj,verbtype,inserttype,category="Commands")
remove_verb(obj,verbtype,inserttype,category="Commands")
remove_verb_by_name(obj,name,category="Commands")
set_customsay(obj,code)
set_customshout(obj,code)
set_customemote(obj,code)
set_customwhisper(obj,code)
dialogue(obj,Message,Title,List=null,Default=null,asnum=0)
get_type(obj)
get_typetext(obj)
check_usesleft(weapon)
istype(obj,type)
get_alpha(obj)
set_alpha(obj,num)
get_pos(obj,mode = "all") modes: "x", "y", "z", "all"
get_spos(obj, mode) modes: "sx","sy"
set_pos(obj,mode = "all",loc|num) modes: "x", "y", "z", "all"
set_spos(obj, mode,num) modes: "sx","sy"
walk(BYOND)
step(BYOND)
get_dir_BYOND(Ref,Trg)
Move(BYOND)
locate(X,Y,Z)
get_dir_of(obj)
set_iconstate(obj,iconstate)
get_iconstate(obj)
get_dir_to(Ref,Trg)
get_dir_to4(Ref,Trg)
get_shinigaminames(attach,viewer,icon='shinigamieyeletters.dmi',alpha=255,startpos=-50,seperation=10,pixely=18)
set_dir(obj,dir)
invisibility_interactivity(obj,num)
addlist(list,vars)
removelist(list,vars)
listpos(list,num)
nohit(obj,num)
noattack(obj,num)
end_round()
toBYONDtext(obj)
get_state(obj,state)
embed(macro,expression)
freeze(obj,num=1)
set_teleporttag(obj,text)
check_teleporttag(obj)
set_locateto(obj,text)
check_locateto(obj)
set_keytag(obj,text)
check_keytag(obj)
set_doortag(obj,text)
check_doortag(obj)
set_luminosity(obj,num)
check_luminosity(obj)
get_securitycode(door)
get_allsecuritycodes()
set_securitycode(door,code)
set_allsecuritycodes(code)
set_rostercode(code)
get_rostercode()
get_paperwriting(paper)
set_paperwriting(paper,writing)
get_bookwriting(book,page)
set_bookwriting(book,writing,page)
get_dnwriting(deathnote,page)
set_dnwriting(deathnote,writing,page)
check_equipped(obj)
detect_input(obj,input) [Four cardinal directions ONLY, as a text string]
force_input(obj,input, target=null) [Valid inputs (as string): north_up, south_up, east_up, west_up, north, south, east, west, click, attack (alias for click), still, still_up, strafe, strafe_up, any other releases all. Target is required for attack/click, not used for anything else.]
set_clickcode(obj,code) [Click code has a special variable named target which is the object that was clicked on]
check_clickcode(obj)
check_afterclickcode(obj)
set_afterclickcode(obj,code)
return_clickcode(obj,num=1)
set_customdeath(obj,code="")
set_fakedeath(obj,num=1)
force_drop(obj,item)
force_throw(obj,item)
force_take(obj,item)
force_equip(obj,item)
disable_footsteps(obj,num=1)
disable_footprints(obj,num=1)
change_weaponstats(weapon,name,icon=null,overlayicon=null,boverlayicon=null,takeable=1,droppable=1,throwable=1,throwrange=3,throwspeed=6,rotationspeed=6,damage=0,lethal=0,drain=1,ver="hits",soundeffect=0,range=18,delay=12,stun=12,usecount=null,paintcolor=null,bloody=0,specificdelaytime=0,specialver="a",emessage="",code="",usecode="",unsearchable=0,effecticon='weffects.dmi',anitime=null,randomeffect=0,effectoffset_x=0,effectoffset_y=0,weapontype=list(),dualwieldable=0,doverlayicon=null,dboverlayicon=null,knocksdown = 0,attackstunreduction = 50,hitstunreduction = 100, knockback = 8)
disable_kits(obj,num=1)
disable_regens(obj,num=1)
disable_sedatives(obj,num=1)
pixel_dist(Ref,Target)
change_emessage(obj,emessage)
set_tint(obj,r,g,b,a,active=1)
get_tint(obj,mode = "all") modes: "r", "g", "b" "a", "all"
set_customstaminaadd(obj,add) //Default "add" is 1
get_customstaminaadd(obj)
lockdoor(obj)
unlockdoor(obj)
lockdoors(objtype)
unlockdoors(objtype)
encode(text)
decode(text)
change_blood_color(obj,color) modes (Deprecated): "splatter" "puddle" "footsteps" "bloodyoverlay" "verybloodyoverlay" //Color is multiplicative. BLUE is MULTIPLIED BY FIVE in the blood color. So divide any blue you have by FIVE.
rgb(BYOND)
get_hourlength()
get_players_in(x,y,z)
duplicate_object(obj,newlocation=null)
duplicate_object_location(objtype,x,y,z,newlocation=null)
duplicate_any_object(x,y,z,newlocation=null)
sqrt(num)
abs(num)
All trig functions in BYOND plus some.
findplayersinlist(list)
player_list_cycle(list,code)
create_skillbutton(player,x,y,name,icon,icon_state,command) [x,y for Butterfly Mode: 15,28]
create_bar(player,x,y,icon,amount,refresh=0) [x,y for HP: 9,28] [x,y for SP: 9,27]
SetBar(mob/player,bar/S,x,y,amount,refresh=0)
EraseBar(mob/player,bar/S)
EraseAllBars(mob/player)
SetSkill(mob/player,skill/S,x,y)
EraseSkill(mob/player,skill/S)
EraseAllSkills(mob/player)
set_watcher_stats(player,text1,text2)
set_player_stats(player,text1,text2)
change_book_title_color(obj,r,g,b)
change_book_page_color(obj,r,g,b)
change_paper_color(obj,r,g,b)
get_frozen(obj)
lerp(a,b,t)
cerp(a,b,t)
animate(BYOND)
text2num(BYOND)
num2text(BYOND)
mobof(client)
get_opacity(atom)
set_opacity(atom,num)
freezeroster(num=1) Non-zero is frozen, null and zero are unfrozen
isfrozenroster() Non-zero is frozen, null and zero are unfrozen
get_tapecolor(tape=null) Null and zero for tapes defaults to first tape found.
set_tapecolor(color,tape=null) Null and zero for tapes defaults to all tapes.
lockeddoor(door)
get_layer(obj)
set_layer(obj,layer)
get_listpos(list,pos) (Same as listpos, just another way of writing it for the pairing of set_listpost.)
set_listpos(list,pos,set)
func_create(name="tempfunc",argnames=list(),argvalues=list())
cuttext(source,portion,Start=1,End=0,returncut=1) //If returncut is true: Find portion and cut it from source if found. If not found, return "". If found, return portion. If returncut is false: Find portion and cut it from source if found. Return source.
findtextinbetween(source,startchar,endchar,Start=1,End=0,Start2=null,End2=null)
findtextbefore(source,startchar,findchar,Start=1,End=0) //Finds text DIRECTLY before startchar
findtextafter(source,startchar,findchar,Start=1,End=0) //Finds text DIRECTLY after startchar
replacetext(source,find,replace,Start=1,End=0)
return value OR return(value) //ONLY for user-defined functions.
get_lastresult(function as text or func)
get_lastarg(function as text or func,argnum)
clientof(mob)
get_eye(client,variable="eye") //Accepts "eye", "lazy_eye", "edge_limit", "perspective", and "virtual_eye"
set_eye(client,setting,variable="eye") //Accepts "eye", "lazy_eye", "edge_limit", "perspective", and "virtual_eye"
forcepower(area,num)
getpower(area)
set_passthrough(obj,list)
get_passthrough(obj)
set_PDAnum(PDA,PDAnum)
get_PDAnum(PDA)
set_PDAlog(PDA,message)
get_PDAlog(PDA)
output_PDAlog(PDA,mob)
output_PDA(PDA,mob,msg)
output_PDAfriends(PDA,mob)
get_PDAfriends(PDA,mode="list")
//Valid modes - list, name/names
set_PDAfriends(PDA,list,mode="list")
//Valid modes - list, name/names
send_PDAmessage(PDA,To,msg)
//To as a PDAnum text string
set_originalPDAnum(mob,PDAnum)
get_originalPDAnum(mob)
get_viewingPDA(mob)
set_viewingPDA(mob,PDA)
mod(A,B) //A % B
disable_food(obj,num=1)
min(expanding)
max(expanding)
copylist(From,Start,End)
get_mouseopacity(atom)
set_mouseopacity(atom,num)
winclone(player, window_name, clone_name)
winget(player, control_id, params)
winset(player, control_id, params)
winshow(player, window, show=1)
bounds(Ref=usr,Dist=0)
obounds(Ref=usr,Dist=0)
set_objhealth(breakableobj,damage)
get_objhealth(breakableobj)
set_nosearch(container,value)
set_nostore(container,value)
get_nosearch(container)
get_nostore(container)
func_scope(list) //Add functions to a list and use this to call the functions more quickly when you have a lot of functions. Useful for loops.
output(obj,msg,control)
browse(obj,Body,Options)
set_totalpoints(mob,points) //Disabled until version 2.00
get_totalpoints(points) //Disabled until version 2.00
set_extraspeed(mob,num)
get_extraspeed(mob)
isrunning(mob)
set_customattack(mob,percent)
get_customattack(mob)
set_customdefense(mob,percent)
get_customdefense(mob)
set_var(anything, varnum=1)
get_var(varnum=1)
set_namedvar(anything, varname)
get_namedvar(varname)
notake(who,num=1)
nodrop(who,num=1)
nothrow(who,num=1)
set_attackcode(obj,code) [Attack code has special variables named victim which is the object that was attacked and attacker which is the same as my]
check_attackcode(obj)
return_attackcode(obj,num=1)
set_afterattackcode(obj,code)
check_afterattackcode(obj)
set_hitcode(obj,code)
check_hitcode(obj)
notase(who,num=1)
nofeather(who,num=1)
killcount(who)
killedby(who)
victims(who)
timeofdeath(who)
causeofdeath(who)
set_killcount(who,num)
set_killedby(who,obj)
set_victims(who,list)
set_timeofdeath(who,text)
set_causeofdeath(who,text)
force_dualequip(obj,item)
check_dualwield(obj)
set_midattackcode(obj,code)
check_midattackcode(obj)
return_midattackcode(obj,num=1)
force_computer(obj)
stamina_regen(obj,num=1)
get_playertype(obj) //0 - not a player, 1 - Player not ingame or watcher, 2 - Player ingame, 3 - Watcher
set_maxhealth(obj,num)
set_maxstamina(obj,num)
get_maxhealth(obj)
get_maxstamina(obj)
set_teammates(obj,list)
get_teammates(obj)
get_loadedskills(obj);
get_currentskills(obj);
get_loadedskillnames(obj);
has_skill(obj, skillname);
emoteview(Dist, Center); //Center must be a mob.
oemoteview(Dist, Center); //Center must be a mob.
get_noattack(obj);
get_nohit(obj);
get_customdeath(obj);
get_stepsize(obj); //Gets the current default movement speed of obj.
set_stepsize(obj, value); //Sets the current default movement speed of obj to value.
get_fps(); //Gets the current server frame rate.
time_step(); //Gets the current value of each time step. Multiply any movement value by this to get the same speed on any frame rate.
get_mapname();
set_color(atom or client, color); //Color is hex color like "#FFFFFF" or "#FFFFFFFF" or rgb(r,g,b) or rgb(r,g,b,a)
get_color(atom or client);
num_of_skill(mob, skillname);
customfreeze(obj,num=1);
get_customfrozen(obj);
noknockout(mob, num=1);
noknockdown,/proc/noknockdown(mob, num=1);
noknockback(mob, num=1);
nosleep(mob, num=1);
get_noknockout(mob);
get_noknockdown(mob);
get_noknockback(mob);
get_nosleep(mob);
nodrag(obj, num=1);
nodragAbility(mob, num=1);
nopush(obj, num=1);
nopushAbility(mob, num=1);
get_nodrag(obj);
get_nodragAbility(mob);
get_nopush(obj);
get_nopushAbility(mob);
[NEW UPDATES BELOW, USES NEW FORMAT]
//Toggle Dead Apostle Ancestor control on victim. Optional flavor sound and text on by default.
proc/toggle_control(var/mob/player/myy, var/mob/player/victim, flavorSound=TRUE, flavorText=TRUE)
//Get who this player is controlling
proc/get_controlling(var/mob/player/myy)
//TODO: Just one function for the two functions below.
//Get if this player is controlled
proc/get_controlled(var/mob/player/myy)
//Get who this player is controlled by
proc/get_controledbywho(var/mob/player/myy)
//Freezes/unfreezes user input. Freezes when val is TRUE, unfreezes otherwise. Can be overidden by force_input.
//When controlling, this is invoked on the controller and passed down to the controlled.
proc/freeze_input(var/mob/player/myy, val=TRUE)
//When controlling, this is invoked on the controller and passed down to the controlled.
//Valid inputs (as string): north_up, south_up, east_up, west_up, north, south, east, west, click, attack (alias for click), still, still_up, strafe, strafe_up
//Target is required for attack/click, not used for anything else.
proc/force_input(var/mob/player/myy,input,atom/movable/target=null)
Planned:
ALL PLANNED FEATURES COMPLETED.
Done:
wprint(text)
printto(to,text)
printtohead(to,headobj,text)
ent_create(objtype,x,y,z,sx=0,sy=0)
self_create(objtype,obj)
contents_create(objtype,obj)
ent_delete(obj)
ent_locdelete(objtype,x,y,z)
setcustommode(cname,req,url,music,picture,gamestartcode,gameendcode,roles=1,author="")
wait(time)
tick_lag()
setkiller(name)
setcustomroleX(name,multi=0,forcerole=2)
showkiller(text)
showcustomroleX(text)
get_haircolor(obj)
length(list/text/file)
list(BYOND)
addoverlay(obj,objtype or atom)
addcustomoverlay(obj,icon,icon_state)
removeoverlay(obj,icon,icon_state="any")
removeoverlays(obj)
checkoverlay(obj,icon,icon_state="any")
checkoverlays(obj)
cleanweapon(weapon)
bloodyweapon(weapon)
findinlist(find,list)
GetWatcher()
GetWatchers()
GetLoggedIn()
GetPlayer()
GetPlayers()
checkmode()
gameinprogress()
gameinprogressnumber()
spawn(num,code)
gameover()
numofplayers()
list_cycle(find,list,code)
prob()
playmusic(who,music,volume=100)
playsound(who,sound,volume=100)
playambience(who,ambience,volume=100)
set_tapesmessage(text)
Uploading Dependencies
String functions: strcat(text), strcpy(T,Start=1,End=0).
hurt(obj,num,uselethality=0)
heal(obj,num,uselethality=0)
file2text(file)
rand(BYOND)
text2file(text,filename,fileextension,replaceall=0) Only supports .txt and .ms files.
get_contents(obj)
get_name(obj)
get_alias(obj)
get_permalias(obj)
get_realname(obj)
get_key(obj)
get_ckey(obj)
set_resultstag(obj,text)
world variable
get_worldcontents()
checktime()
GetDead()
lockdoor(doortype)
unlockdoor(doortype)
GetIngame()
pick(BYOND)
GetAlive()
checknumofroles(obj,expanding)
list(expanding)
set_mstag(obj,anything,tagnum=1)
check_mstag(obj,tagnum=1)
find_mstag(anything,tagnum=1)
find_text_in_mstag(text,Start,End,tagnum=1)
findtext(BYOND)
set_mscode(obj,text)
check_mscode(obj)
run_mscode(obj)
run_mscode_on(obj,target)
run_mscode_func(obj)
set_usecode(useableobj,text) //user is the person who activated the usecode.
get_usecode(usableobj)
set_health(obj,num)
set_stamina(obj,num)
set_grief(obj,num)
knockout(obj, time=100)
get_health(obj)
get_stamina(obj)
get_grief(obj)
view(Dist,Center) //Camera view: 10 Dist
range(Dist,Center)
hearers(Dist,Center)
permadeath(obj)
oview(Dist,Center)
orange(Dist,Center)
hiddenoverlay(attach,viewer,icon,iconstate=null,alpha=255,pixelx=0,pixely=0)
ohearers(Dist,Center)
forceemote(obj)
forcesay(obj)
forceshout(obj)
forcesuicide(obj)
set_alias(obj,text)
set_permalias(obj,text)
set_realname(obj,text)
set_haircolor(obj,text)
set_name(obj,text)
set_headicon(obj,icon) //Head icons must be 24x14 in size and contain an icon_state matching the name of the player's icon without the .dmi
get_icon(obj)
get_headicon(obj)
get_madokaheadicon(obj)
set_role(obj,role) //See the Set Custom Roles in the Functions menu for the roles.
set_RPgender(obj,text)
get_RPgender(obj)
get_realgender(obj)
set_realgender(obj,text)
set_character(obj,objtype)
set_icon(obj,icon)
set_density(obj,num)
get_density(obj)
invisibility(obj,num)
see_invisible(obj,num)
get_invisibility(obj)
get_see_invisible(obj)
create_mob(name,icon,icon_state,x,y,z,sx=0,sy=0,density=1,life=100,stamina=100,grief=0,hasplayercode=0,code="")
create_obj(name,icon,icon_state,x,y,z,sx=0,sy=0,density=0,code="",usecode="")
create_item(name,icon,icon_state,x,y,z,sx=0,sy=0,type="",weight=0,takeable=1,droppable=1,throwable=1,throwrange=3,throwspeed=6,rotationspeed=6,emessage="",code="",usecode="",unsearchable=0,onpickup="",ondrop="",onthrow="",onsteal="")
[All "on" arguments (ex. ondrop) use holder variable for the person who has the item, and onsteal also uses stolen for the person who had the item.]
create_weapon(name,icon,overlayicon,boverlayicon,x,y,z,sx=0,sy=0,type="",weight=0,takeable=1,droppable=1,throwable=1,throwrange=3,throwspeed=6,rotationspeed=6,damage=0,lethal=0,drain=1,ver="hits",soundeffect='punch.wav',range=18,delay=12,stun=12,usecount=null,paintcolor=null,bloody=0,specificdelaytime=0,specialver="a",emessage="",code="",usecode="",unsearchable=0,onpickup="",ondrop="",onthrow="",onsteal="",onequip="",onunequip="",effecticon='weffects.dmi',anitime=null,randomeffect=0,effectoffset_x=0,effectoffset_y=0,weapontype=list(),dualwieldable=0,doverlayicon=null,dboverlayicon=null,knocksdown = 0,attackstunreduction = 50,hitstunreduction = 100, knockback = 8)
create_verb(obj,name,code,desc="",category="Commands")
add_verb(obj,verbtype,inserttype,category="Commands")
remove_verb(obj,verbtype,inserttype,category="Commands")
remove_verb_by_name(obj,name,category="Commands")
set_customsay(obj,code)
set_customshout(obj,code)
set_customemote(obj,code)
set_customwhisper(obj,code)
dialogue(obj,Message,Title,List=null,Default=null,asnum=0)
get_type(obj)
get_typetext(obj)
check_usesleft(weapon)
istype(obj,type)
get_alpha(obj)
set_alpha(obj,num)
get_pos(obj,mode = "all") modes: "x", "y", "z", "all"
get_spos(obj, mode) modes: "sx","sy"
set_pos(obj,mode = "all",loc|num) modes: "x", "y", "z", "all"
set_spos(obj, mode,num) modes: "sx","sy"
walk(BYOND)
step(BYOND)
get_dir_BYOND(Ref,Trg)
Move(BYOND)
locate(X,Y,Z)
get_dir_of(obj)
set_iconstate(obj,iconstate)
get_iconstate(obj)
get_dir_to(Ref,Trg)
get_dir_to4(Ref,Trg)
get_shinigaminames(attach,viewer,icon='shinigamieyeletters.dmi',alpha=255,startpos=-50,seperation=10,pixely=18)
set_dir(obj,dir)
invisibility_interactivity(obj,num)
addlist(list,vars)
removelist(list,vars)
listpos(list,num)
nohit(obj,num)
noattack(obj,num)
end_round()
toBYONDtext(obj)
get_state(obj,state)
embed(macro,expression)
freeze(obj,num=1)
set_teleporttag(obj,text)
check_teleporttag(obj)
set_locateto(obj,text)
check_locateto(obj)
set_keytag(obj,text)
check_keytag(obj)
set_doortag(obj,text)
check_doortag(obj)
set_luminosity(obj,num)
check_luminosity(obj)
get_securitycode(door)
get_allsecuritycodes()
set_securitycode(door,code)
set_allsecuritycodes(code)
set_rostercode(code)
get_rostercode()
get_paperwriting(paper)
set_paperwriting(paper,writing)
get_bookwriting(book,page)
set_bookwriting(book,writing,page)
get_dnwriting(deathnote,page)
set_dnwriting(deathnote,writing,page)
check_equipped(obj)
detect_input(obj,input) [Four cardinal directions ONLY, as a text string]
force_input(obj,input, target=null) [Valid inputs (as string): north_up, south_up, east_up, west_up, north, south, east, west, click, attack (alias for click), still, still_up, strafe, strafe_up, any other releases all. Target is required for attack/click, not used for anything else.]
set_clickcode(obj,code) [Click code has a special variable named target which is the object that was clicked on]
check_clickcode(obj)
check_afterclickcode(obj)
set_afterclickcode(obj,code)
return_clickcode(obj,num=1)
set_customdeath(obj,code="")
set_fakedeath(obj,num=1)
force_drop(obj,item)
force_throw(obj,item)
force_take(obj,item)
force_equip(obj,item)
disable_footsteps(obj,num=1)
disable_footprints(obj,num=1)
change_weaponstats(weapon,name,icon=null,overlayicon=null,boverlayicon=null,takeable=1,droppable=1,throwable=1,throwrange=3,throwspeed=6,rotationspeed=6,damage=0,lethal=0,drain=1,ver="hits",soundeffect=0,range=18,delay=12,stun=12,usecount=null,paintcolor=null,bloody=0,specificdelaytime=0,specialver="a",emessage="",code="",usecode="",unsearchable=0,effecticon='weffects.dmi',anitime=null,randomeffect=0,effectoffset_x=0,effectoffset_y=0,weapontype=list(),dualwieldable=0,doverlayicon=null,dboverlayicon=null,knocksdown = 0,attackstunreduction = 50,hitstunreduction = 100, knockback = 8)
disable_kits(obj,num=1)
disable_regens(obj,num=1)
disable_sedatives(obj,num=1)
pixel_dist(Ref,Target)
change_emessage(obj,emessage)
set_tint(obj,r,g,b,a,active=1)
get_tint(obj,mode = "all") modes: "r", "g", "b" "a", "all"
set_customstaminaadd(obj,add) //Default "add" is 1
get_customstaminaadd(obj)
lockdoor(obj)
unlockdoor(obj)
lockdoors(objtype)
unlockdoors(objtype)
encode(text)
decode(text)
change_blood_color(obj,color) modes (Deprecated): "splatter" "puddle" "footsteps" "bloodyoverlay" "verybloodyoverlay" //Color is multiplicative. BLUE is MULTIPLIED BY FIVE in the blood color. So divide any blue you have by FIVE.
rgb(BYOND)
get_hourlength()
get_players_in(x,y,z)
duplicate_object(obj,newlocation=null)
duplicate_object_location(objtype,x,y,z,newlocation=null)
duplicate_any_object(x,y,z,newlocation=null)
sqrt(num)
abs(num)
All trig functions in BYOND plus some.
findplayersinlist(list)
player_list_cycle(list,code)
create_skillbutton(player,x,y,name,icon,icon_state,command) [x,y for Butterfly Mode: 15,28]
create_bar(player,x,y,icon,amount,refresh=0) [x,y for HP: 9,28] [x,y for SP: 9,27]
SetBar(mob/player,bar/S,x,y,amount,refresh=0)
EraseBar(mob/player,bar/S)
EraseAllBars(mob/player)
SetSkill(mob/player,skill/S,x,y)
EraseSkill(mob/player,skill/S)
EraseAllSkills(mob/player)
set_watcher_stats(player,text1,text2)
set_player_stats(player,text1,text2)
change_book_title_color(obj,r,g,b)
change_book_page_color(obj,r,g,b)
change_paper_color(obj,r,g,b)
get_frozen(obj)
lerp(a,b,t)
cerp(a,b,t)
animate(BYOND)
text2num(BYOND)
num2text(BYOND)
mobof(client)
get_opacity(atom)
set_opacity(atom,num)
freezeroster(num=1) Non-zero is frozen, null and zero are unfrozen
isfrozenroster() Non-zero is frozen, null and zero are unfrozen
get_tapecolor(tape=null) Null and zero for tapes defaults to first tape found.
set_tapecolor(color,tape=null) Null and zero for tapes defaults to all tapes.
lockeddoor(door)
get_layer(obj)
set_layer(obj,layer)
get_listpos(list,pos) (Same as listpos, just another way of writing it for the pairing of set_listpost.)
set_listpos(list,pos,set)
func_create(name="tempfunc",argnames=list(),argvalues=list())
cuttext(source,portion,Start=1,End=0,returncut=1) //If returncut is true: Find portion and cut it from source if found. If not found, return "". If found, return portion. If returncut is false: Find portion and cut it from source if found. Return source.
findtextinbetween(source,startchar,endchar,Start=1,End=0,Start2=null,End2=null)
findtextbefore(source,startchar,findchar,Start=1,End=0) //Finds text DIRECTLY before startchar
findtextafter(source,startchar,findchar,Start=1,End=0) //Finds text DIRECTLY after startchar
replacetext(source,find,replace,Start=1,End=0)
return value OR return(value) //ONLY for user-defined functions.
get_lastresult(function as text or func)
get_lastarg(function as text or func,argnum)
clientof(mob)
get_eye(client,variable="eye") //Accepts "eye", "lazy_eye", "edge_limit", "perspective", and "virtual_eye"
set_eye(client,setting,variable="eye") //Accepts "eye", "lazy_eye", "edge_limit", "perspective", and "virtual_eye"
forcepower(area,num)
getpower(area)
set_passthrough(obj,list)
get_passthrough(obj)
set_PDAnum(PDA,PDAnum)
get_PDAnum(PDA)
set_PDAlog(PDA,message)
get_PDAlog(PDA)
output_PDAlog(PDA,mob)
output_PDA(PDA,mob,msg)
output_PDAfriends(PDA,mob)
get_PDAfriends(PDA,mode="list")
//Valid modes - list, name/names
set_PDAfriends(PDA,list,mode="list")
//Valid modes - list, name/names
send_PDAmessage(PDA,To,msg)
//To as a PDAnum text string
set_originalPDAnum(mob,PDAnum)
get_originalPDAnum(mob)
get_viewingPDA(mob)
set_viewingPDA(mob,PDA)
mod(A,B) //A % B
disable_food(obj,num=1)
min(expanding)
max(expanding)
copylist(From,Start,End)
get_mouseopacity(atom)
set_mouseopacity(atom,num)
winclone(player, window_name, clone_name)
winget(player, control_id, params)
winset(player, control_id, params)
winshow(player, window, show=1)
bounds(Ref=usr,Dist=0)
obounds(Ref=usr,Dist=0)
set_objhealth(breakableobj,damage)
get_objhealth(breakableobj)
set_nosearch(container,value)
set_nostore(container,value)
get_nosearch(container)
get_nostore(container)
func_scope(list) //Add functions to a list and use this to call the functions more quickly when you have a lot of functions. Useful for loops.
output(obj,msg,control)
browse(obj,Body,Options)
set_totalpoints(mob,points) //Disabled until version 2.00
get_totalpoints(points) //Disabled until version 2.00
set_extraspeed(mob,num)
get_extraspeed(mob)
isrunning(mob)
set_customattack(mob,percent)
get_customattack(mob)
set_customdefense(mob,percent)
get_customdefense(mob)
set_var(anything, varnum=1)
get_var(varnum=1)
set_namedvar(anything, varname)
get_namedvar(varname)
notake(who,num=1)
nodrop(who,num=1)
nothrow(who,num=1)
set_attackcode(obj,code) [Attack code has special variables named victim which is the object that was attacked and attacker which is the same as my]
check_attackcode(obj)
return_attackcode(obj,num=1)
set_afterattackcode(obj,code)
check_afterattackcode(obj)
set_hitcode(obj,code)
check_hitcode(obj)
notase(who,num=1)
nofeather(who,num=1)
killcount(who)
killedby(who)
victims(who)
timeofdeath(who)
causeofdeath(who)
set_killcount(who,num)
set_killedby(who,obj)
set_victims(who,list)
set_timeofdeath(who,text)
set_causeofdeath(who,text)
force_dualequip(obj,item)
check_dualwield(obj)
set_midattackcode(obj,code)
check_midattackcode(obj)
return_midattackcode(obj,num=1)
force_computer(obj)
stamina_regen(obj,num=1)
get_playertype(obj) //0 - not a player, 1 - Player not ingame or watcher, 2 - Player ingame, 3 - Watcher
set_maxhealth(obj,num)
set_maxstamina(obj,num)
get_maxhealth(obj)
get_maxstamina(obj)
set_teammates(obj,list)
get_teammates(obj)
get_loadedskills(obj);
get_currentskills(obj);
get_loadedskillnames(obj);
has_skill(obj, skillname);
emoteview(Dist, Center); //Center must be a mob.
oemoteview(Dist, Center); //Center must be a mob.
get_noattack(obj);
get_nohit(obj);
get_customdeath(obj);
get_stepsize(obj); //Gets the current default movement speed of obj.
set_stepsize(obj, value); //Sets the current default movement speed of obj to value.
get_fps(); //Gets the current server frame rate.
time_step(); //Gets the current value of each time step. Multiply any movement value by this to get the same speed on any frame rate.
get_mapname();
set_color(atom or client, color); //Color is hex color like "#FFFFFF" or "#FFFFFFFF" or rgb(r,g,b) or rgb(r,g,b,a)
get_color(atom or client);
num_of_skill(mob, skillname);
customfreeze(obj,num=1);
get_customfrozen(obj);
noknockout(mob, num=1);
noknockdown,/proc/noknockdown(mob, num=1);
noknockback(mob, num=1);
nosleep(mob, num=1);
get_noknockout(mob);
get_noknockdown(mob);
get_noknockback(mob);
get_nosleep(mob);
nodrag(obj, num=1);
nodragAbility(mob, num=1);
nopush(obj, num=1);
nopushAbility(mob, num=1);
get_nodrag(obj);
get_nodragAbility(mob);
get_nopush(obj);
get_nopushAbility(mob);
[NEW UPDATES BELOW, USES NEW FORMAT]
//Toggle Dead Apostle Ancestor control on victim. Optional flavor sound and text on by default.
proc/toggle_control(var/mob/player/myy, var/mob/player/victim, flavorSound=TRUE, flavorText=TRUE)
//Get who this player is controlling
proc/get_controlling(var/mob/player/myy)
//TODO: Just one function for the two functions below.
//Get if this player is controlled
proc/get_controlled(var/mob/player/myy)
//Get who this player is controlled by
proc/get_controledbywho(var/mob/player/myy)
//Freezes/unfreezes user input. Freezes when val is TRUE, unfreezes otherwise. Can be overidden by force_input.
//When controlling, this is invoked on the controller and passed down to the controlled.
proc/freeze_input(var/mob/player/myy, val=TRUE)
//When controlling, this is invoked on the controller and passed down to the controlled.
//Valid inputs (as string): north_up, south_up, east_up, west_up, north, south, east, west, click, attack (alias for click), still, still_up, strafe, strafe_up
//Target is required for attack/click, not used for anything else.
proc/force_input(var/mob/player/myy,input,atom/movable/target=null)