Jump to content

Daodan DLL: Difference between revisions

3,027 bytes added ,  19 January 2013
→‎C-Daodan: more stuff from /Beta
(reorganizing sections and beginning to add in material from the Beta page)
(→‎C-Daodan: more stuff from /Beta)
Line 19: Line 19:
*Windowed mode - Oni runs inside a window; there is a menu option to enter fullscreen mode.
*Windowed mode - Oni runs inside a window; there is a menu option to enter fullscreen mode.
*Custom screen resolutions - Includes many more default screen resolutions and the ability to add custom resolutions (see below)
*Custom screen resolutions - Includes many more default screen resolutions and the ability to add custom resolutions (see below)
*BGRA32 support
*Extra cheats - '''bigbadboss''' (player takes less weapon damage), '''bulletproof''' (player takes no weapon damage), '''kangaroo''' (high jumps), '''marypoppins''' (flight)
*Extra cheats - '''bigbadboss''' (player takes less weapon damage), '''bulletproof''' (player takes no weapon damage), '''kangaroo''' (high jumps), '''marypoppins''' (flight)
*Cheats always enabled
*Cheats always enabled
Line 173: Line 174:
|-
|-
|newweap
|newweap
|
|Picking up a weapon displays a message containing the weapon name and amount of ammo
|}
===All options===
{| class="wikitable"
!INI name
!Default
!Description
|-
|usedaodanbsl
|On
|Use Daodan BSL
|-
|border
|
|
|-
|shadow
|
|
|-
|topmost
|
|
|-
|multibyte
|
|
|-
|debug
|
|
|-
|debugfiles
|
|
|-
|findsounds
|
|
|-
|ignore_private_data
|
|
|-
|sound
|
|
|-
|switch
|
|
|
|
|}
|}
===Added BSL functions===
===BSL===
Any time a function can both get and set a value, and you set the value, the old value should be is returned, barring any programming oversight by Gumby.
====Math====
* int '''int32mul''' n1:int n2:int
:Multiplies two integers
* float '''mul''' [int1:int|float1:float] [int2:int|float2:float]
:Multiplies two numbers
* int '''int32div''' n1:int n2:int
:Divides two integers
* float '''div''' [int1:int|float1:float] [int2:int|float2:float]
:Divides two two numbers
* int '''int32rand''' start:int end:int
:Returns a pseudo-random number between two numbers (inclusive).
====Characters====
* int '''d_getkills''' [ai_name:str | script_id:int]
:Gets the number of kills a character has
* int '''d_getdamage''' [ai_name:str | script_id:int]
:Gets the amount of damage a character has caused
* string '''d_name''' [ai_name:str | script_id:int] [newname:string]
:Gets or sets a character's name
* string '''d_regen''' [ai_name:str | script_id:int] on_off:bool
:Currently broken, won't do anything
* int '''d_getindex''' [ai_name:str]
:Gets a character's script_id from their name
* int '''d_powerup''' ai_name:str|script_id:int powerup:str [newcount:int]
:Gets or sets the amount of powerups a character has
:Powerup list the same as with '''chr_givepowerup''' with the addition of "bossshield"
* int '''d_health''' [ai_name:str | script_id:int] [newhealth:int]
:Gets or sets a character's health
* int '''d_maxhealth''' [ai_name:str | script_id:int] [newmaxhealth:int]
:Gets or sets a character's maxhealth
* int '''d_holdkey''' [ai_name:string | script_id:int] keys frames:int
:Makes a character hold a key
:Possibly broken
* int '''d_isheld''' keys
:Checks if player is holding a key
:Possibly broken
* int '''d_waitforkeypress''' keys
:Waits for a keypress from the player
* int '''d_powerup''' [ai_name:string | script_id:int] powerup:string
:Gets or sets a character's powerups
* float '''d_location''' [ai_name:string | script_id:int] xyz:string
:Gets the X\Y\Z coordinate of a character
* float '''d_location''' [ai_name:string | script_id:int] x:float y:float z:float
:Sets the XYZ coordinates of a character
* int '''d_regen''' [ai_name:string | script_id:int] yesno:int
:Gets or sets a character's regeneration abilities
====Text====
* void '''d_dprint''' text:string [textcolor: r b g] [shadowcolor: r b g]
:Prints to console in color
:Colors are ints between 0 and 255. Other numbers will be reduced to 255.
:Any colors you do not supply will be replaced with the default values: 255, 255, 255 and 63, 63. 63
* string '''sprintf''' str1:format ...
:Does a C-style sprintf operation on a string


===Developer Mode===
===Developer Mode===