Files
assaultcube-/config/scripts.cfg
T
Bukz 8a92c89206 getmodeacr
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@6193 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2011-04-01 22:59:25 +00:00

327 lines
11 KiB
INI

// CubeScript placed in this file is automatically executed on each startup.
// "editent" command:
// This command collects all the attributes of the nearest entity, and then
// prompts that into a handy command that allows you to edit that entities
// attributes easily.
// Note: The editent command can NOT define rotation/yaw inside the command!
// However, the current yaw of the player will define the rotation/yaw when
// using the command!
editent = [
if (strcmp (getenttype) "mapmodel") [
saycommand "/entset" (getenttype) (getentattr 1) (getentattr 2) (getentattr 3)
] [
if (> (findlist "light sound clip plclip" (getenttype)) -1) [
saycommand "/entset" (getenttype) (getentattr 0) (getentattr 1) (getentattr 2) (getentattr 3)
] [
saycommand "/entset" (getenttype) (getentattr ((> (findlist "playerstart ctf-flag" (getenttype)) -1)))
]
]
]
// "convertclips" command:
// This command automatically changes the a "clip" to a "plclip" entity or vice-versa.
convertclips = [
if (strcmp (getenttype) "clip") [
entset plclip (getentattr 0) (getentattr 1) (getentattr 2) (getentattr 3)
] [
if (strcmp (getenttype) "plclip") [
entset clip (getentattr 0) (getentattr 1) (getentattr 2) (getentattr 3)
] [
echo No changes made. This entity isn't a clip or a plclip.
echo Try using the /closestenttype command to find a specific entity.
]
]
]
// "gibsgore" command:
// This command controls gib Speed/Number/TTL all in one variable.
gibsgore = [
if (= $arg1 4) [ // Unrealistic
gib 1
gibspeed 40
gibnum 100
gibttl 2500 // Turn TTL down to minimise lag...
__gibsgore = 4
] [
if (= $arg1 3) [ // Messy
gib 1
gibspeed 15
gibnum 65
gibttl 10000
__gibsgore = 3
] [
if (= $arg1 2) [ // Good
gib 1
gibspeed 30
gibnum 75
gibttl 5000
__gibsgore = 2
] [
if (= $arg1 1) [ // Normal
gib 1
gibspeed 30
gibnum 6
gibttl 5000
__gibsgore = 1
] [
if (= $arg1 0) [ // Off
gib 0
__gibsgore = 0
]
]
]
]
]
]
// "fullscreenscript" command:
// This command allows swapping of fullscreen mode to be bound to a key.
fullscreenscript = [ if $fullscreen [ fullscreen 0 ] [ fullscreen 1 ] ]
editmapmsg = [ saycommand ( concatword [/mapmsg ] ["] (getmapmsg) ["] ) ]
run = [ exec (concatword config/ $arg1 .cfg) ]
// Auto-completions
mapcomplete = [complete $arg1 "packages/maps/official packages/maps" cgz]
mapcommands = "map tdm coop dm lms ts ctf pf lss osok tosok htf vip tktf ktf sendmap"
loop i (listlen $mapcommands) [ mapcomplete (at $mapcommands $i) ]
complete demo "demos" dmo
entcomplete = [listcomplete $arg1 "light playerstart pistol ammobox grenades health armour akimbo mapmodel ladder ctf-flag sound clip plclip helmet"]
entcomplete newent
entcomplete clearents
entcomplete closestenttype
// TODO:FIXME change all occurrence of SPECT(ator) to GHOST
listcomplete team "CLA RVSF CLA-SPECT RVSF-SPECT SPECTATOR"
// Game mode descriptions...
gamemodedesc 0 [Team Deathmatch: Find the enemy team and destroy them!]
gamemodedesc 1 [Co-operative edit: Use this mode to edit maps with others online!]
gamemodedesc 2 [Deathmatch: Destroy anything that moves! Everyone for themselves!]
gamemodedesc 3 [Survivor: Everyone for themselves! Once you die, you must wait for the round to restart.]
gamemodedesc 4 [Team Survivor: Find the enemy team, destroy them. Once everyone on the enemy team is gone... repeat!]
gamemodedesc 5 [Capture the Flag: Steal the enemy flag and bring it to your home base. Don't let your own flag get stolen.]
gamemodedesc 6 [Pistol Frenzy: Can you make your enemy eat lead with the most simple of weapons?]
gamemodedesc 7 [Bot Team Deathmatch: Find the enemy team and destroy them!]
gamemodedesc 8 [Bot Deathmatch: It's every man and A.I for themselves! Dismantle those bots! ]
gamemodedesc 9 [Last Swiss Standing: Knive and bomb the enemy!]
gamemodedesc 10 [One Shot, One Kill: You and your opponents start with 1hp, a sniper rifle, a knife and no pickups. Survive with your sniper, or humiliate with your swiss steel.]
gamemodedesc 11 [Team One Shot, One Kill: Your team starts with 1hp, a sniper rifle, a knife and no pickups. Survive with your sniper, or humiliate with your swiss steel.]
gamemodedesc 12 [Bot One-Shot, One Kill: You and the bots start with 1hp, a sniper rifle, a knife and no pickups. Survive with your sniper, or humiliate with your swiss steel.]
gamemodedesc 13 [Hunt the Flag: Find the enemy flag, frag the flag bearer and collect the flag to score. Protect your own team flag. If the flag bearer collects the enemy flag, they gain a 1 point bonus.]
gamemodedesc 14 [Team Keep the Flag: There is only one flag. Get the flag and keep it. You score one point every 15 seconds. If your teammate has the flag, protect him. If the flag bearer collects the enemy flag, they gain a 1 point bonus.]
gamemodedesc 15 [Keep the Flag: Get the flag and keep it. You score one point every 15 seconds. Everybody else will want to destroy you!]
// "resetbinds" command.
resetbinds = [ exec config/resetbinds.cfg; echo (c 3)All binds have been reset to default values! ]
// "changeteam" command.
changeteam = [ if (< (curteam) 4) [ team (at "RVSF CLA RVSF-SPECT CLA-SPECT" (curteam)) ] ]
// "spectate" command
spectate = [ suicide; sleep 500 [ team SPECTATOR ] ]
// Mode/map-setting aliases.
votemap = [ mode $arg1; map $arg2 ]
tdm = [ votemap 0 $arg1 ]
coop = [ votemap 1 $arg1 ]
dm = [ votemap 2 $arg1 ]
lms = [ votemap 3 $arg1 ]
ts = [ votemap 4 $arg1 ]
ctf = [ votemap 5 $arg1 ]
pf = [ votemap 6 $arg1 ]
lss = [ votemap 9 $arg1 ]
osok = [ votemap 10 $arg1 ]
tosok = [ votemap 11 $arg1 ]
htf = [ votemap 13 $arg1 ]
vip = [ votemap 13 $arg1 ]
tktf = [ votemap 14 $arg1 ]
ktf = [ votemap 15 $arg1 ]
// Weapon switching/action utilities.
primary = [ weapon (currentprimary) ]
secondary = [ weapon 1 ]
melee = [ weapon 0 ]
grenades = [ weapon 8 ]
altaction = [ (concatword altaction_ (curweapon)) ]
quicknadethrow_old = [
if (> (magcontent 8) 0) [
if (!= (curweapon) 7) [grenades]
attack
]
onrelease [ sleep 1 [ if (= (curweapon) 7) [weapon (prevweapon)] ] ]
]
loop i 10 [ (concatword altaction_ $i) = quicknadethrow ] // Quick nade throw is default
altaction_5 = [ setscope 1; onrelease [ setscope 0 ] ] // Sniper
altaction_7 = [ setburst 1; onrelease [ setburst 0 ] ] // Combat pistol
// altaction_8 = [ attack ] // Grenade // with this comment, you throw the nade and the nade is unselected : Brahma
oldsens = $sensitivity
zoom = [
if (= $arg1 1) [
if (=f $sensitivity (scopesens)) [] [
oldsens = $sensitivity
// avoid error if using 0.001 as sensitivity
newsens = (scopesens)
if (> (*f 1 1000) $newsens) [
if (< 1000 $newsens) [
sensitivity (scopesens)
] []
] []
setscope 1
]
] [
sensitivity $oldsens
setscope 0
]
]
delta_game_0 = [ if (= $arg1 1) [ shiftweapon 1 ] [ shiftweapon -1 ] ]
delta_spect_0 = [ changefollowplayer $arg1 ]
// Map editing using the mousewheel...
modifier = 0
domodifier = [ modifier = $arg1; onrelease [ modifier = 0 ] ]
universaldelta = [
if $editing [ s = "edit" ] [
if (alive) [ s = "game" ] [ s = "spect" ]
]
(concatword delta _ $s _ $modifier)
]
// To utilize the below, you will need to bind "domodifier X"
// (replace X with the number of the delta_edit) to a key. To
// use them, simply hold the key that the "domodifier" is bound
// to and then scroll backwards/forwards while looking at the
// floor/ceiling.
delta_edit_0 = [ editheight $flrceil $arg1 ] // Move cubes...
delta_edit_1 = [ if $flrceil [ vdelta $arg1 ] [ vdelta (- 0 $arg1) ] ] // Change heightfielding...
delta_edit_2 = [ edittex $flrceil $arg1 ] // Change floor/ceiling textures...
delta_edit_3 = [ edittex (+ $flrceil 1) $arg1 ] // Change wall/upper-wall textures...
delta_edit_4 = [ equalize $flrceil ] // Equalize floor/ceiling...
delta_edit_5 = [ entproperty 0 $arg1 ] // Changes the first value on entities...
delta_edit_6 = [ entproperty $editaxis $arg1 ] // Move map entity...
delta_edit_7 = [ entproperty 1 $arg1 ] // Changes the second value on entities...
delta_edit_8 = [ entproperty 2 $arg1 ] // Changes the third value on entities...
delta_edit_9 = [ entproperty 3 $arg1 ] // Changes the fourth value on entities...
// HUD toggles
toggleshowmap = [ showmap 1; onrelease [ showmap 0 ] ]
// convenient connecting from the serverbrowser
// sbconnect arg list:
// arg1 IP, arg2 port,
// arg3 1: server full
// arg4 1: password protected
// arg5 1: private mode
// arg6 1: banned, 2: blacklisted 3: both
// arg7 "server description"
// TODO: interpret a#3,4,5,6 [ft:any1:2010apr04]
sbdns = ""; sbport = ""; sbdesc = ""; sbmsg = ""; sbpwd = ""
sbconnect = [
sbdns = $arg1; sbport = $arg2; sbdesc = $arg7; sbpwd = ""; sbmsg = ""
if (>= $arg6 1) [
sbmsg = "You are banned from this server."; showmenu "password required"
] [
if (= $arg5 1) [
sbmsg = "This server is set to private."; showmenu "password required"
] [
if (= $arg4 1) [
sbmsg = "This server is password-protected."; showmenu "password required"
] [
echo connecting to $arg7; connect $arg1 $arg2;
]
]
]
]
// For those players who use IRC too much...
join = [ connect $arg1 $arg2 $arg3 ]
add2alias = [
if (strcmp "" (getalias $arg1)) [
$arg1 = $arg2
] [
$arg1 = (concat (concatword (getalias $arg1) ";") $arg2)
]
]
addOnLoadOnce = [ add2alias mapstartonce $arg1 ]
addOnLoadAlways = [ add2alias mapstartalways $arg1 ]
addOnQuit = [ add2alias onQuit $arg1 ]
run tutorial
// copyent & pasteent - Quickly copy/paste the current closest entity.
ent_type = none
get_ent_attrs = [
if $editing [
loop gea 4 [
(format "ent_attr_%1" $gea) = (getentattr $gea)
]
]
]
copyent = [
if $editing [
ent_type = (getenttype)
get_ent_attrs
]
]
pasteent = [
if $editing [
newent $ent_type $ent_attr_0 $ent_attr_1 $ent_attr_2 $ent_attr_3
]
]
// megabind - Binds a key to many different actions depending on the current game state.
megabind = [
if (= $numargs 6) [
bind $arg1 (format "if (watchingdemo) [ %1 ] [ if (|| $editing (= $gamemode 1)) [ %2 ] [ if $connected [ %3 ] [ if (curmodeattr bot) [ %4 ] [ %5 ] ] ] ]" $arg2 $arg3 $arg4 $arg5 $arg6)
]
]
// getscrext - Returns the proper file extension for the client's current screenshottype setting, including the "."
getscrext = [
if (= $screenshottype 0) [ result ".bmp" ] [
if (= $screenshottype 1) [ result ".jpg" ] [
if (= $screenshottype 2) [ result ".png" ] [
result -1
]
]
]
]
// getmodeacr - Returns the proper current mode's acronym.
gamemodes_list = [ TDM COOP DM SURV TSURV CTF PF BTDM BDM LSS OSOK TOSOK BOSOK HTF TKTF KTF ]
getmodeacr = [ result (at $gamemodes_list $gamemode) ]
// Simple claim-admin script for one single-server.
// Fill in the 3 aliases below, and uncomment the below line to activate.
// bind F3 "customclaimadminscript"
_CAS_serverip = "IP ADDRESS"
_CAS_serverpass = "PASSWORD"
_CAS_servername = "SERVER NAME"
customclaimadminscript = [
if (strcmp (curserver 1) $_CAS_serverip) [
if (! (currole)) [
setadmin 1 $_CAS_serverpass
] [
setadmin 0; echo you relinquished admin status
]
] [
echo (concat (c 3)Error: (c 5)you're not connected to $_CAS_servername servers)
]
]