Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

@FelixWolf
Last active December 31, 2020 11:20
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save FelixWolf/0961a4ccc1e5008077a19a7a2712821b to your computer and use it in GitHub Desktop.
Save FelixWolf/0961a4ccc1e5008077a19a7a2712821b to your computer and use it in GitHub Desktop.
#define ANIM_EXPRESS_AFRAID "6b61c8e8-4747-0d75-12d7-e49ff207a4ca"
#define ANIM_AIM_R_BAZOOKA "b5b4a67d-0aee-30d2-72cd-77b333e932ef"
#define ANIM_AIM_L_BOW "46bb4359-de38-4ed8-6a22-f1f52fe8f506"
#define ANIM_AIM_R_HANDGUN "3147d815-6338-b932-f011-16b56d9ac18b"
#define ANIM_AIM_R_RIFLE "ea633413-8006-180a-c3ba-96dd1d756720"
#define ANIM_EXPRESS_ANGER "5747a48e-073e-c331-f6f3-7c2149613d3e"
#define ANIM_AWAY "fd037134-85d4-f241-72c6-4f42164fedee"
#define ANIM_BACKFLIP "c4ca6188-9127-4f31-0158-23c4e2f93304"
#define ANIM_EXPRESS_LAUGH "18b3a4b5-b463-bd48-e4b6-71eaac76c515"
#define ANIM_BLOWKISS "db84829b-462c-ee83-1e27-9bbee66bd624"
#define ANIM_EXPRESS_BORED "b906c4ba-703b-1940-32a3-0c7f7d791510"
#define ANIM_BOW "82e99230-c906-1403-4d9c-3889dd98daba"
#define ANIM_BRUSH "349a3801-54f9-bf2c-3bd0-1ac89772af01"
#define ANIM_BUSY "efcf670c-2d18-8128-973a-034ebc806b67"
#define ANIM_CLAP "9b0c1c4e-8ac7-7969-1494-28c874c4f668"
#define ANIM_COURTBOW "9ba1c942-08be-e43a-fb29-16ad440efc50"
#define ANIM_CROUCH "201f3fdf-cb1f-dbec-201f-7333e328ae7c"
#define ANIM_CROUCHWALK "47f5f6fb-22e5-ae44-f871-73aaaf4a6022"
#define ANIM_EXPRESS_CRY "92624d3e-1068-f1aa-a5ec-8244585193ed"
#define ANIM_TURN_180 "038fcec9-5ebd-8a8e-0e2e-6e71a0a1ac53"
#define ANIM_TURNBACK_180 "6883a61a-b27b-5914-a61e-dda118a9ee2c"
#define ANIM_DANCE1 "b68a3d7c-de9e-fc87-eec8-543d787e5b0d"
#define ANIM_DANCE2 "928cae18-e31d-76fd-9cc9-2f55160ff818"
#define ANIM_DANCE3 "30047778-10ea-1af7-6881-4db7a3a5a114"
#define ANIM_DANCE4 "951469f4-c7b2-c818-9dee-ad7eea8c30b7"
#define ANIM_DANCE5 "4bd69a1d-1114-a0b4-625f-84e0a5237155"
#define ANIM_DANCE6 "cd28b69b-9c95-bb78-3f94-8d605ff1bb12"
#define ANIM_DANCE7 "a54d8ee2-28bb-80a9-7f0c-7afbbe24a5d6"
#define ANIM_DANCE8 "b0dc417c-1f11-af36-2e80-7e7489fa7cdc"
#define ANIM_DEAD "57abaae6-1d17-7b1b-5f98-6d11a6411276"
#define ANIM_DRINK "0f86e355-dd31-a61c-fdb0-3a96b9aad05f"
#define ANIM_EXPRESS_EMBARRASED "514af488-9051-044a-b3fc-d4dbf76377c6"
#define ANIM_EXPRESS_AFRAID_EMOTE "aa2df84d-cf8f-7218-527b-424a52de766e"
#define ANIM_EXPRESS_ANGER_EMOTE "1a03b575-9634-b62a-5767-3a679e81f4de"
#define ANIM_EXPRESS_BORED_EMOTE "214aa6c1-ba6a-4578-f27c-ce7688f61d0d"
#define ANIM_EXPRESS_CRY_EMOTE "d535471b-85bf-3b4d-a542-93bea4f59d33"
#define ANIM_EXPRESS_DISDAIN "d4416ff1-09d3-300f-4183-1b68a19b9fc1"
#define ANIM_EXPRESS_EMBARRASSED_EMOTE "0b8c8211-d78c-33e8-fa28-c51a9594e424"
#define ANIM_EXPRESS_FROWN "fee3df48-fa3d-1015-1e26-a205810e3001"
#define ANIM_EXPRESS_KISS "1e8d90cc-a84e-e135-884c-7c82c8b03a14"
#define ANIM_EXPRESS_LAUGH_EMOTE "62570842-0950-96f8-341c-809e65110823"
#define ANIM_EXPRESS_OPEN_MOUTH "d63bc1f9-fc81-9625-a0c6-007176d82eb7"
#define ANIM_EXPRESS_REPULSED_EMOTE "f76cda94-41d4-a229-2872-e0296e58afe1"
#define ANIM_EXPRESS_SAD_EMOTE "eb6ebfb2-a4b3-a19c-d388-4dd5c03823f7"
#define ANIM_EXPRESS_SHRUG_EMOTE "a351b1bc-cc94-aac2-7bea-a7e6ebad15ef"
#define ANIM_EXPRESS_SMILE "b7c7c833-e3d3-c4e3-9fc0-131237446312"
#define ANIM_EXPRESS_SURPRISE_EMOTE "728646d9-cc79-08b2-32d6-937f0a835c24"
#define ANIM_EXPRESS_TONGUE_OUT "835965c6-7f2f-bda2-5deb-2478737f91bf"
#define ANIM_EXPRESS_TOOTHSMILE "b92ec1a5-e7ce-a76b-2b05-bcdb9311417e"
#define ANIM_EXPRESS_WINK_EMOTE "da020525-4d94-59d6-23d7-81fdebf33148"
#define ANIM_EXPRESS_WORRY_EMOTE "9c05e5c7-6f07-6ca4-ed5a-b230390c3950"
#define ANIM_FALLDOWN "666307d9-a860-572d-6fd4-c3ab8865c094"
#define ANIM_FEMALE_WALK "f5fc7433-043d-e819-8298-f519a119b688"
#define ANIM_ANGRY_FINGERWAG "c1bc7f36-3ba0-d844-f93c-93be945d644f"
#define ANIM_FIST_PUMP "7db00ccd-f380-f3ee-439d-61968ec69c8a"
#define ANIM_FLY "aec4610c-757f-bc4e-c092-c6e9caf18daf"
#define ANIM_FLYSLOW "2b5a38b2-5e00-3a97-a495-4c826bc443e6"
#define ANIM_HELLO "9b29cd61-c45b-5689-ded2-91756b8d76a9"
#define ANIM_HOLD_R_BAZOOKA "ef62d355-c815-4816-2474-b1acc21094a6"
#define ANIM_HOLD_L_BOW "8b102617-bcba-037b-86c1-b76219f90c88"
#define ANIM_HOLD_R_HANDGUN "efdc1727-8b8a-c800-4077-975fc27ee2f2"
#define ANIM_HOLD_R_RIFLE "3d94bad0-c55b-7dcc-8763-033c59405d33"
#define ANIM_HOLD_THROW_R "7570c7b5-1f22-56dd-56ef-a9168241bbb6"
#define ANIM_HOVER "4ae8016b-31b9-03bb-c401-b1ea941db41d"
#define ANIM_HOVER_DOWN "20f063ea-8306-2562-0b07-5c853b37b31e"
#define ANIM_HOVER_UP "62c5de58-cb33-5743-3d07-9e4cd4352864"
#define ANIM_IMPATIENT "5ea3991f-c293-392e-6860-91dfa01278a3"
#define ANIM_JUMP "2305bd75-1ca9-b03b-1faa-b176b8a8c49e"
#define ANIM_JUMPFORJOY "709ea28e-1573-c023-8bf8-520c8bc637fa"
#define ANIM_KISSMYBUTT "19999406-3a3a-d58c-a2ac-d72e555dcf51"
#define ANIM_LAND "7a17b059-12b2-41b1-570a-186368b6aa6f"
#define ANIM_LAUGH_SHORT "ca5b3f14-3194-7a2b-c894-aa699b718d1f"
#define ANIM_SOFT_LAND "f4f00d6e-b9fe-9292-f4cb-0ae06ea58d57"
#define ANIM_MOTORCYCLE_SIT "08464f78-3a8e-2944-cba5-0c94aff3af29"
#define ANIM_MUSCLEBEACH "315c3a41-a5f3-0ba4-27da-f893f769e69b"
#define ANIM_NO_HEAD "5a977ed9-7f72-44e9-4c4c-6e913df8ae74"
#define ANIM_NO_UNHAPPY "d83fa0e5-97ed-7eb2-e798-7bd006215cb4"
#define ANIM_NYANYA "f061723d-0a18-754f-66ee-29a44795a32f"
#define ANIM_PUNCH_ONETWO "eefc79be-daae-a239-8c04-890f5d23654a"
#define ANIM_PEACE "b312b10e-65ab-a0a4-8b3c-1326ea8e3ed9"
#define ANIM_POINT_ME "17c024cc-eef2-f6a0-3527-9869876d7752"
#define ANIM_POINT_YOU "ec952cca-61ef-aa3b-2789-4d1344f016de"
#define ANIM_PREJUMP "7a4e87fe-de39-6fcb-6223-024b00893244"
#define ANIM_PUNCH_L "f3300ad9-3462-1d07-2044-0fef80062da0"
#define ANIM_PUNCH_R "c8e42d32-7310-6906-c903-cab5d4a34656"
#define ANIM_EXPRESS_REPULSED "36f81a92-f076-5893-dc4b-7c3795e487cf"
#define ANIM_KICK_ROUNDHOUSE_R "49aea43b-5ac3-8a44-b595-96100af0beda"
#define ANIM_RPS_COUNTDOWN "35db4f7e-28c2-6679-cea9-3ee108f7fc7f"
#define ANIM_RPS_PAPER "0836b67f-7f7b-f37b-c00a-460dc1521f5a"
#define ANIM_RPS_ROCK "42dd95d5-0bc6-6392-f650-777304946c0f"
#define ANIM_RPS_SCISSORS "16803a9f-5140-e042-4d7b-d28ba247c325"
#define ANIM_RUN "05ddbff8-aaa9-92a1-2b74-8fe77a29b445"
#define ANIM_EXPRESS_SAD "0eb702e2-cc5a-9a88-56a5-661a55c0676a"
#define ANIM_SALUTE "cd7668a6-7011-d7e2-ead8-fc69eff1a104"
#define ANIM_SHOOT_L_BOW "e04d450d-fdb5-0432-fd68-818aaf5935f8"
#define ANIM_SHOUT "6bd01860-4ebd-127a-bb3d-d1427e8e0c42"
#define ANIM_EXPRESS_SHRUG "70ea714f-3a97-d742-1b01-590a8fcd1db5"
#define ANIM_SIT "1a5fe8ac-a804-8a5d-7cbd-56bd83184568"
#define ANIM_SIT_FEMALE "b1709c8d-ecd3-54a1-4f28-d55ac0840782"
#define ANIM_SIT_GROUND "1c7600d6-661f-b87b-efe2-d7421eb93c86"
#define ANIM_SIT_GROUND_CONSTRAINED "1a2bd58e-87ff-0df8-0b4c-53e047b0bb6e"
#define ANIM_SIT_GENERIC "245f3c54-f1c0-bf2e-811f-46d8eeb386e7"
#define ANIM_SIT_TO_STAND "a8dee56f-2eae-9e7a-05a2-6fb92b97e21e"
#define ANIM_SLEEP "f2bed5f9-9d44-39af-b0cd-257b2a17fe40"
#define ANIM_SMOKE_IDLE "d2f2ee58-8ad1-06c9-d8d3-3827ba31567a"
#define ANIM_SMOKE_INHALE "6802d553-49da-0778-9f85-1599a2266526"
#define ANIM_SMOKE_THROW_DOWN "0a9fb970-8b44-9114-d3a9-bf69cfe804d6"
#define ANIM_SNAPSHOT "eae8905b-271a-99e2-4c0e-31106afd100c"
#define ANIM_STAND "2408fe9e-df1d-1d7d-f4ff-1384fa7b350f"
#define ANIM_STANDUP "3da1d753-028a-5446-24f3-9c9b856d9422"
#define ANIM_STAND_1 "15468e00-3400-bb66-cecc-646d7c14458e"
#define ANIM_STAND_2 "370f3a20-6ca6-9971-848c-9a01bc42ae3c"
#define ANIM_STAND_3 "42b46214-4b44-79ae-deb8-0df61424ff4b"
#define ANIM_STAND_4 "f22fed8b-a5ed-2c93-64d5-bdd8b93c889f"
#define ANIM_STRETCH "80700431-74ec-a008-14f8-77575e73693f"
#define ANIM_STRIDE "1cb562b0-ba21-2202-efb3-30f82cdf9595"
#define ANIM_SURF "41426836-7437-7e89-025d-0aa4d10f1d69"
#define ANIM_EXPRESS_SURPRISE "313b9881-4302-73c0-c7d0-0e7a36b6c224"
#define ANIM_SWORD_STRIKE_R "85428680-6bf9-3e64-b489-6f81087c24bd"
#define ANIM_TALK "5c682a95-6da4-a463-0bf6-0f5b7be129d1"
#define ANIM_ANGRY_TANTRUM "11000694-3f41-adc2-606b-eee1d66f3724"
#define ANIM_THROW_R "aa134404-7dac-7aca-2cba-435f9db875ca"
#define ANIM_TRYON_SHIRT "83ff59fe-2346-f236-9009-4e3608af64c1"
#define ANIM_TURNLEFT "56e0ba0d-4a9f-7f27-6117-32f2ebbf6135"
#define ANIM_TURNRIGHT "2d6daa51-3192-6794-8e2e-a15f8338ec30"
#define ANIM_TYPE "c541c47f-e0c0-058b-ad1a-d6ae3a4584d9"
#define ANIM_WALK "6ed24bd8-91aa-4b12-ccc7-c97c857ab4e0"
#define ANIM_WHISPER "7693f268-06c7-ea71-fa21-2b30d6533f8f"
#define ANIM_WHISTLE "b1ed7982-c68e-a982-7561-52a88a5298c0"
#define ANIM_EXPRESS_WINK "869ecdad-a44b-671e-3266-56aef2e3ac2e"
#define ANIM_WINK_HOLLYWOOD "c0c4030f-c02b-49de-24ba-2331f43fe41c"
#define ANIM_EXPRESS_WORRY "9f496bd2-589a-709f-16cc-69bf7df1d36c"
#define ANIM_YES_HEAD "15dd911d-be82-2856-26db-27659b142875"
#define ANIM_YES_HAPPY "b8c8b2a3-9008-1771-3bfc-90924955ab2d"
#define ANIM_YOGA_FLOAT "42ecd00b-9947-a97c-400a-bbc9174c7aeb"
//Defines
#include "animation_ids.lsl"
#include "sound_ids.lsl"
//Real Lighting
#define LIGHT_CANDLE <1.000000, 0.576471, 0.160784>
#define LIGHT_TUNGSTEN_40W <1.000000, 0.772549, 0.560784>
#define LIGHT_TUNGSTEN_100W <1.000000, 0.839216, 0.666667>
#define LIGHT_HALOGEN <1.000000, 0.945098, 0.878431>
#define LIGHT_CARBON <1.000000, 0.980392, 0.956863>
#define LIGHT_SUN_NOON <1.000000, 1.000000, 0.984314>
#define LIGHT_SUN_DIRECT <1.000000, 1.000000, 1.000000>
#define LIGHT_SKY_OVERCAST <0.788235, 0.886275, 1.000000>
#define LIGHT_SKY_CLEAR <0.250980, 0.611765, 1.000000>
#define LIGHT_FLUORESCENT_WARM <1.000000, 0.956863, 0.898039>
#define LIGHT_FLUORESCENT_STANDARD <0.956863, 1.000000, 0.980392>
#define LIGHT_FLUORESCENT_COOL <0.831373, 0.921569, 1.000000>
#define LIGHT_FLUORESCENT_FULL <1.000000, 0.956863, 0.949020>
#define LIGHT_FLUORESCENT_GROW <1.000000, 0.937255, 0.968627>
#define LIGHT_FLUORESCENT_BLACK <0.654902, 0.000000, 1.000000>
#define LIGHT_VAPOR_MERCURY <0.847059, 0.968627, 1.000000>
#define LIGHT_VAPOR_SODIUM <1.000000, 0.819608, 0.698039>
#define LIGHT_METAL_HALIDE <0.949020, 0.988235, 1.000000>
#define LIGHT_SODIUM <1.000000, 0.717647, 0.298039>
/**
* @desc Validates that the correct permissions and owner prim is set
* @param {key} creator - The key of creator of the root prim
* @param {integer} permissions - The permissions the object should have
* @param {list} developers - A list of keys representing those whom have source access
*/
integer ac_validateObject(key creator, integer permissions, list allowOverride){
if(~llListFindList(allowOverride,[(string)llGetOwner()]))
return TRUE;
if(llList2Key(llGetObjectDetails(llGetKey(),[OBJECT_CREATOR]),0) != creator)
return FALSE;
integer pm = llGetObjectPermMask(MASK_OWNER);
if(permissions&pm)
return FALSE;
return TRUE;
}
//Helper functions
string object(list a){return llList2Json(JSON_OBJECT, a);}
//#define object(a) llList2Json(JSON_OBJECT, a)
string array(list a){return llList2Json(JSON_ARRAY, a);}
//#define array(a) llList2Json(JSON_ARRAY, a)
#define arrayFromString(a) llJson2List(a)
string objectKey(string src, list dir, string def){
src = llJsonGetValue(src,dir);
if(src == JSON_INVALID)
return def;
return src;
}
string dumpList2QueryString(list props){
string res;
integer i = 0;
integer l = llGetListLength(props);
for(;i<l;i=i+2){
if(res != "")res+="&";
res+=llEscapeURL(llList2String(props, i))+"="+llEscapeURL(llList2String(props, i+1));
}
return res;
}
list parseQueryString2List(string input){
list result;
list tmp = llParseString2List(input, ["&"], []);
integer i = 0;
integer l = llGetListLength(tmp);
for(;i<l;i++){
list tmp2 = llParseString2List(llList2String(tmp, i), ["="], []);
result += [llUnescapeURL(llList2String(tmp2, 0)), llUnescapeURL(llDumpList2String(llList2List(tmp2,1,-1), "="))];
}
return result;
}
list parsePathInfo(string input){
list result;
list tmp = llList2List(llParseString2List(input, ["/"], []), 1,-1);
integer i = 0;
integer l = llGetListLength(tmp);
for(;i<l;i++){
result += [llUnescapeURL(llList2String(tmp, i))];
}
return result;
}
list getStrideValue(list haystack, integer stride, list needle){
list tmp = llList2ListStrided(haystack, stride, 0, -1);
integer index = llListFindList(tmp, needle);
if(~needle){
index = index * stride;
return llList2List(haystack, index, index+stride);
}
return [];
}
string __CZChrLst=" !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~"; //"
list __CZTexLst=["b0f2fc68-94ce-30c5-2d44-e4d104cabff3","1acf3dec-ea5c-3024-bc3c-d97881ac3228","cf9a9675-cac2-7105-c528-7f903c74aa0d","2c5219c6-a781-6a4f-7a1d-7b0b622669a8"];
cziSetChars(string _O, integer _L, integer _S){
integer _X=llSubStringIndex(__CZChrLst,llGetSubString(_O,0,0));
integer _Y=llSubStringIndex(__CZChrLst,llGetSubString(_O,1,1));
integer _M=0;
if (_X<64&&_Y>64)_M=1;
else if(_X>64&&_Y<64)_M=2;
else if(_X>64&&_Y>64)_M=3;
vector _I=llList2Vector([<64,64,0>,<32,64,0>,<64,32,0>,<32,32,0>],_M);
float _W=1/_I.x;
float _H=1/_I.y;
integer _F=llList2Integer([(64*_X)+_Y,(32*_X)+_Y-64,(64*(_X-64))+_Y,(32*(_X-64))+_Y-64],_M);
integer _R=llFloor((float)_F/_I.x);
llSetLinkPrimitiveParamsFast(_L,[PRIM_TEXTURE,_S,llList2Key(__CZTexLst,_M),<_W, _H, 0>,<-llFloor(_I.x/2)*_W+_W/2+_W*(_F-_R*_I.x),llFloor(_I.y/2)*_H-_H/2-_H*_R-llList2Float([0.0025,0.0025,0.005,0.005],_M),0>,0]);
}
list cziSetCharsBuffer(string _O, integer _S){
integer _X=llSubStringIndex(__CZChrLst,llGetSubString(_O,0,0));
integer _Y=llSubStringIndex(__CZChrLst,llGetSubString(_O,1,1));
integer _M=0;
if (_X<64&&_Y>64)_M=1;
else if(_X>64&&_Y<64)_M=2;
else if(_X>64&&_Y>64)_M=3;
vector _I=llList2Vector([<64,64,0>,<32,64,0>,<64,32,0>,<32,32,0>],_M);
float _W=1/_I.x;
float _H=1/_I.y;
integer _F=llList2Integer([(64*_X)+_Y,(32*_X)+_Y-64,(64*(_X-64))+_Y,(32*(_X-64))+_Y-64],_M);
integer _R=llFloor((float)_F/_I.x);
return [PRIM_TEXTURE,_S,llList2Key(__CZTexLst,_M),<_W, _H, 0>,<-llFloor(_I.x/2)*_W+_W/2+_W*(_F-_R*_I.x),llFloor(_I.y/2)*_H-_H/2-_H*_R-llList2Float([0.0025,0.0025,0.005,0.005],_M)-0.001,0>,0];
}
//Set the actual text
czSetText(integer _L, string _O){
integer _I;
for(;_I<8;_I++) cziSetChars(llGetSubString(_O,_I*2,(_I*2)+1),_L,_I);
}
czSetTextBuffering(integer _L, string _O){
integer _I;
list buffer;
for(;_I<8;_I++) buffer=buffer+cziSetCharsBuffer(llGetSubString(_O,_I*2,(_I*2)+1),_I);
llSetLinkPrimitiveParamsFast(_L,buffer);
}
list czSetTextBuffer(integer _L, string _O){
integer _I;
list buffer=[PRIM_LINK_TARGET,_L];
for(;_I<8;_I++) buffer=buffer+cziSetCharsBuffer(llGetSubString(_O,_I*2,(_I*2)+1),_I);
return buffer;
}
integer czInBoundingBox(vector test, vector a, vector b){
if(test.x < a.x) return FALSE;
if(test.y < a.y) return FALSE;
if(test.z < a.z) return FALSE;
if(test.x > b.x) return FALSE;
if(test.y > b.y) return FALSE;
if(test.z > b.z) return FALSE;
return TRUE;
}
float czMax(float x,float y){if(y>x)return y;return x;}
float czMin(float x,float y){if(y<x)return y;return x;}
vector czBezier(float seg, vector start, vector handle1, vector handle2, vector end){
float u = 1-seg;
float sseg = seg*seg;
float uu = u*u;
return ((uu*u)*start)+(3*uu*seg*handle1)+(3*u*sseg*handle2)+((sseg*seg)*end);
}
integer getSeconds(integer seconds){return seconds%60;}
integer getMinutes(integer seconds){return floor(seconds/60)%60;}
integer getHours(integer seconds){return floor(seconds/3600)%24;}
integer getDays(integer seconds){return floor(seconds/86400);}
key getAgentByString(string name){
if((key)name)return (key)name;
name=llToLower(name);
list agents = llGetAgentList(AGENT_LIST_REGION, []);
integer i;
integer l=llGetListLength(agents);
for(;i<l;i++)
if(llToLower(llKey2Name(llList2Key(agents,i))) == name)
return llList2Key(agents,i);
for(i=0;i<l;i++)
if(~llSubStringIndex(llToLower(llKey2Name(llList2Key(agents,i))),name))
return llList2Key(agents,i);
for(i=0;i<l;i++)
if(llToLower(llGetDisplayName(llList2Key(agents,i))) == name)
return llList2Key(agents,i);
for(i=0;i<l;i++)
if(~llSubStringIndex(llToLower(llGetDisplayName(llList2Key(agents,i))),name))
return llList2Key(agents,i);
return NULL_KEY;
}
integer ord(string c){
return llBase64ToInteger(llStringToBase64(c))>>24;
}
integer hash(string str){
integer r = 0;
integer l = llStringLength(str);
integer i = 0;
for(; l > i; ++i)
r = (r<<5) - r + ord(llGetSubString(str,i,i));
return r;
}
vector hashColor(string str) {
integer a = hash(str);
return <
(float)(a >> 24 & 255)/255.0,
(float)(a >> 16 & 255)/255.0,
(float)(a >> 8 & 255)/255.0
>; //r.s = .299 * r.x + .587 * r.y + .114 * r.z > 125;
}
/*Dr. Hal (Otacon) Emmerich sprite generator*/
#define OTACON_SPRITE_DEFAULT [0]
#define OTACON_SPRITE_THUMBSUP [12, 13, 14, 15]
#define OTACON_SPRITE_SHRUG [14, 15]
#define OTACON_SPRITE_LAUGH [26, 27, 28]
#define OTACON_SPRITE_BLUSH [29, 30, 31, 32]
#define OTACON_SPRITE_NAUSEATED [33]
#define OTACON_SPRITE_GHOST [34]
#define OTACON_SPRITE_STOMACH [35, 36]
#define OTACON_SPRITE_ANGRY [37, 38]
#define OTACON_SPRITE_ENTRY [41, 42, 43, 44]
getOtacon(integer prim, integer face, integer sprite){
/*Get a otacon sprite*/
if(sprite<0||sprite>44){
llShout(DEBUG_CHANNEL, "Otacon sprite number must be in range of 0 and 44!");
return;
}
llSetLinkPrimitiveParamsFast(prim, [
PRIM_TEXTURE,
face,
"1bc172c8-1478-77ac-95f6-677771e52eae",
<0.048, 0.25, 0>,
<-0.47725+(0.04688*(sprite%20)), 0.375-(llFloor((float)sprite/20)*0.25), 0>,
0
]);
}
/*Keypression*/
string hex32(integer value){
integer lsn;
string nybbles = "";
do
nybbles = llGetSubString("0123456789abcdef", lsn = (value & 0xF), lsn) + nybbles;
while ((value = (0xFFFFFFF & (value >> 4))));
return llGetSubString("00000000"+nybbles,-8,-1);
}
string keyToBase64(key input){
input = llDumpList2String(llParseString2List(input, ["-"], []),"");
return llDumpList2String(
llParseString2List(
llIntegerToBase64((integer)("0x"+llGetSubString(input,0,7)))
+llIntegerToBase64((integer)("0x"+llGetSubString(input,8,15)))
+llIntegerToBase64((integer)("0x"+llGetSubString(input,16,23)))
+llIntegerToBase64((integer)("0x"+llGetSubString(input,24,32))),
["="],
[]),
"");
}
key base64ToKey(string input){
input =
hex32(llBase64ToInteger(llGetSubString(input, 0, 5)))
+hex32(llBase64ToInteger(llGetSubString(input, 6, 11)))
+hex32(llBase64ToInteger(llGetSubString(input, 12, 17)))
+hex32(llBase64ToInteger(llGetSubString(input, 18, 23)));
return llGetSubString(input, 0, 7)
+"-"+llGetSubString(input, 8, 11)
+"-"+llGetSubString(input, 12, 15)
+"-"+llGetSubString(input, 16, 19)
+"-"+llGetSubString(input, 20, 31);
}
integer RGB2Int(vector col){
return ((((integer)(col.x)*255)&0xFF)<<16) | ((integer)(col.y*255)&0xFF)<<8 | ((integer)(col.z*255)&0xFF);
}
vector int2RGB(integer i){
vector result;
result.x = (float)((i>>16)&0xFF)/255.0;
result.y = (float)((i>>8)&0xFF)/255.0;
result.z = (float)((i&0xFF)/255.0);
}
list string2Bytes(string str){
list result;
integer i;
integer l = llStringLength(str);
for(;i<l;i=i+4){
integer num = llBase64ToInteger(llStringToBase64(llGetSubString(str, i, i+4)));
integer x;
for(;x<4;x++){
result = result + [num >> (24-(8*x)) & 0xFF];
}
}
return llList2List(result, 0, l-1);
}
string bytes2String(list input){
string result;
integer i;
integer l = llGetListLength(input);
for(;i<l;i=i+4){
integer num = 0;
integer x;
for(;x<4;x++){
num = num | (llList2Integer(input, i+x) << (24-(8*x)));
//result = result + [num >> (24-(8*x)) & 0xFF];
}
result = result + llBase64ToString(llIntegerToBase64(num));
}
return llGetSubString(result, 0, l-1);
}
list xorList(list a, list b){
list result;
integer i;
integer asize = llGetListLength(a);
integer bsize = llGetListLength(b);
for(;i<asize;i++){
result = result + [llList2Integer(a, i) ^ llList2Integer(b, i%bsize)];
}
return result;
}
list fillList(list value, integer length){
list result;
integer i;
for(;i<length;i++){
result = result + value;
}
return result;
}
string hmac(string secret, string message){
if(llStringLength(secret) > 64){
secret = llSHA1String(secret); // keys longer than blocksize are shortened
}
list lSecret = string2Bytes(secret);
if(llStringLength(secret) < 64){
// keys shorter than blocksize are zero-padded (where ∥ is concatenation)
lSecret = lSecret + fillList([0x00], (64 - llStringLength(secret))); // Where * is repetition.
}
list o_key_pad = xorList(fillList([0x5c], 64), lSecret); // Where blocksize is that of the underlying hash function
list i_key_pad = xorList(fillList([0x36], 64), lSecret); // Where ⊕ is exclusive or (XOR)
return llSHA1String(bytes2String(o_key_pad) + llSHA1String(bytes2String(i_key_pad) + message));
}
string hashMessage(string secret, string msg){
return hmac(secret, msg)+msg;
}
integer validateMessage(string secret, string msg){
return llGetSubString(msg,0,39) == hmac(secret, llGetSubString(msg, 40, -1));
}
float hue2rgb(float p, float q, float t){
if(t < 0) t += 1;
if(t > 1) t -= 1;
// t < 1/6
if(t < 0.16666666666666666) return p + (q - p) * 6.0 * t;
// t < 1/2
if(t < 0.5) return q;
// t < 2/3
if(t < 0.6666666666666666) return p + (q - p) * (2.0/3.0 - t) * 6.0;
return p;
}
vector hsl2rgb(vector hsl){
if(hsl.y == 0) return ZERO_VECTOR;
float q;
if(hsl.z < 0.5) q = hsl.z * (1.0 + hsl.y);
else q = hsl.z + hsl.y - hsl.z * hsl.y;
float p = 2.0 * hsl.z - q;
return <
hue2rgb(p, q, hsl.x + 1.0/3.0),
hue2rgb(p, q, hsl.x),
hue2rgb(p, q, hsl.x - 1.0/3.0)
>;
}
#define SND_NULL "00000000-0000-0000-0000-000000000000"
#define SND_RIDE "00000000-0000-0000-0000-000000000100"
#define SND_SHOT "00000000-0000-0000-0000-000000000101"
#define SND_MORTAR "00000000-0000-0000-0000-000000000102"
#define SND_HIT "00000000-0000-0000-0000-000000000103"
#define SND_EXPLOSION "00000000-0000-0000-0000-000000000104"
#define SND_BOING "00000000-0000-0000-0000-000000000105"
#define SND_OBJECT_CREATE_ORIG "9f1bc096-3592-411e-9b0b-c447a9ff054c"
#define SND_CHIRP "00000000-0000-0000-0000-000000000106"
#define SND_CHIRP2 "828a9526-175b-455d-8af0-0e3c0fb602b2"
#define SND_CHIRP3 "f99772d6-1ce6-4a39-a28b-06d26c94c9e3"
#define SND_CHIRP4 "54472ca4-7fc9-42cb-b7d5-99ad5b12bd50"
#define SND_CHIRP5 "2929964f-fac5-40d7-9179-2864a8fa9ace"
#define SND_CHIRPDEAD "9abff1d3-863a-4e04-bd83-3834fd7fcff4"
#define SND_MUNCH "00000000-0000-0000-0000-000000000107"
#define SND_PUNCH "00000000-0000-0000-0000-000000000108"
#define SND_SPLASH "00000000-0000-0000-0000-000000000109"
#define SND_CLICK_ORIG "00000000-0000-0000-0000-000000000110"
#define SND_WHISTLE "ab858f9a-1f44-4d39-9b33-351543d03ccb"
#define SND_TYPING "5e191c7b-8996-9ced-a177-b2ac32bfea06"
#define SND_ARROW_SHOT "00000000-0000-0000-0000-000000000111"
#define SND_ARROW_THUD "00000000-0000-0000-0000-000000000112"
#define SND_LASER_SHOT "00000000-0000-0000-0000-000000000113"
#define SND_JET_THRUST "67f5e4f0-0534-4d97-bc01-f297648d20e0"
#define SND_SILENCE "00000000-0000-0000-0000-000000000114"
#define SND_BUBBLES "00000000-0000-0000-0000-000000000115"
#define SND_WELCOME "00000000-0000-0000-0000-000000000116"
#define SND_SQUISH "00000000-0000-0000-0000-000000000117"
#define SND_SUBPOD "00000000-0000-0000-0000-000000000118"
#define SND_FOOTSTEPS "00000000-0000-0000-0000-000000000119"
#define SND_STEP_LEFT "00000000-0000-0000-0000-000000000124"
#define SND_STEP_RIGHT "00000000-0000-0000-0000-000000000125"
#define SND_BALL_COLLISION "00000000-0000-0000-0000-000000000120"
#define SND_OOOH_SCARE_ME "00000000-0000-0000-0000-000000000121"
#define SND_PAYBACK_TIME "00000000-0000-0000-0000-000000000122"
#define SND_READY_FOR_BATTLE "00000000-0000-0000-0000-000000000123"
#define SND_FLESH_FLESH "dce5fdd4-afe4-4ea1-822f-dd52cac46b08"
#define SND_FLESH_PLASTIC "51011582-fbca-4580-ae9e-1a5593f094ec"
#define SND_FLESH_RUBBER "68d62208-e257-4d0c-bbe2-20c9ea9760bb"
#define SND_GLASS_FLESH "75872e8c-bc39-451b-9b0b-042d7ba36cba"
#define SND_GLASS_GLASS "6a45ba0b-5775-4ea8-8513-26008a17f873"
#define SND_GLASS_PLASTIC "992a6d1b-8c77-40e0-9495-4098ce539694"
#define SND_GLASS_RUBBER "2de4da5a-faf8-46be-bac6-c4d74f1e5767"
#define SND_GLASS_WOOD "6e3fb0f7-6d9c-42ca-b86b-1122ff562d7d"
#define SND_METAL_FLESH "14209133-4961-4acc-9649-53fc38ee1667"
#define SND_METAL_GLASS "bc4a4348-cfcc-4e5e-908e-8a52a8915fe6"
#define SND_METAL_METAL "9e5c1297-6eed-40c0-825a-d9bcd86e3193"
#define SND_METAL_PLASTIC "e534761c-1894-4b61-b20c-658a6fb68157"
#define SND_METAL_RUBBER "8761f73f-6cf9-4186-8aaa-0948ed002db1"
#define SND_METAL_WOOD "874a26fd-142f-4173-8c5b-890cd846c74d"
#define SND_PLASTIC_PLASTIC "0e24a717-b97e-4b77-9c94-b59a5a88b2da"
#define SND_RUBBER_PLASTIC "75cf3ade-9a5b-4c4d-bb35-f9799bda7fb2"
#define SND_RUBBER_RUBBER "153c8bf7-fb89-4d89-b263-47e58b1b4774"
#define SND_STONE_FLESH "55c3e0ce-275a-46fa-82ff-e0465f5e8703"
#define SND_STONE_GLASS "24babf58-7156-4841-9a3f-761bdbb8e237"
#define SND_STONE_METAL "aca261d8-e145-4610-9e20-9eff990f2c12"
#define SND_STONE_PLASTIC "0642fba6-5dcf-4d62-8e7b-94dbb529d117"
#define SND_STONE_RUBBER "25a863e8-dc42-4e8a-a357-e76422ace9b5"
#define SND_STONE_STONE "9538f37c-456e-4047-81be-6435045608d4"
#define SND_STONE_WOOD "8c0f84c3-9afd-4396-b5f5-9bca2c911c20"
#define SND_WOOD_FLESH "be582e5d-b123-41a2-a150-454c39e961c8"
#define SND_WOOD_PLASTIC "c70141d4-ba06-41ea-bcbc-35ea81cb8335"
#define SND_WOOD_RUBBER "7d1826f4-24c4-4aac-8c2e-eff45df37783"
#define SND_WOOD_WOOD "063c97d3-033a-4e9b-98d8-05c8074922cb"
#define SND_SLIDE_FLESH_FLESH "614eec22-f73d-4fdc-8691-a37dc5c58333"
#define SND_SLIDE_FLESH_PLASTIC SND_NULL
#define SND_SLIDE_FLESH_RUBBER SND_NULL
#define SND_SLIDE_FLESH_FABRIC "3678b9b9-2a0c-42b5-9c83-80b64ad6e898"
#define SND_SLIDE_FLESH_GRAVEL "02eaa42a-ce1a-4b6b-9c38-cd7ad0e8f4a6"
#define SND_SLIDE_FLESH_GRAVEL_02 "e7d3b501-79f8-4419-b842-ab6843e0f840"
#define SND_SLIDE_FLESH_GRAVEL_03 "4c3e8b52-6244-4e44-85a6-f4ab994418ed"
#define SND_SLIDE_GLASS_GRAVEL "ca491e77-5c47-4ea1-8021-b3ebbf636cab"
#define SND_SLIDE_GLASS_GRAVEL_02 "30794d49-91ce-48e3-a527-c06f67bd6cbe"
#define SND_SLIDE_GLASS_GRAVEL_03 "04c78e54-fd8d-46b6-8ab9-7678b5d6e5cb"
#define SND_SLIDE_GLASS_FLESH SND_NULL
#define SND_SLIDE_GLASS_GLASS SND_NULL
#define SND_SLIDE_GLASS_PLASTIC SND_NULL
#define SND_SLIDE_GLASS_RUBBER SND_NULL
#define SND_SLIDE_GLASS_WOOD SND_NULL
#define SND_SLIDE_METAL_FABRIC "18b66e81-2958-42d4-a373-7a5054919adc"
#define SND_SLIDE_METAL_FLESH "dde65837-633c-4841-af2f-62ec471bf61e"
#define SND_SLIDE_METAL_FLESH_02 "f3cc2cbe-1a1a-4db7-a8d2-e9c8f8fa1f4f"
#define SND_SLIDE_METAL_GLASS "4188be39-7b1f-4495-bf2b-83ddd82eea05"
#define SND_SLIDE_METAL_GLASS_02 "336faa2b-9d96-4e14-93ad-b63b60074379"
#define SND_SLIDE_METAL_GLASS_03 "34d912aa-cf73-4462-b7d0-dcba2c66caba"
#define SND_SLIDE_METAL_GLASS_04 "97ffc063-e872-4469-8e95-1450ac6bad2b"
#define SND_SLIDE_METAL_GRAVEL "2bbff37d-009a-4cfc-9a0d-817652c08fbe"
#define SND_SLIDE_METAL_GRAVEL_02 "a906a228-783b-49e7-9f0a-e20a41d0e39f"
#define SND_SLIDE_METAL_METAL "09461277-c691-45de-b2c5-89dfd3712f79"
#define SND_SLIDE_METAL_METAL_02 "e00a5d97-8fdc-46c1-bd53-7e312727466c"
#define SND_SLIDE_METAL_METAL_03 "8ebfa780-c440-4b52-ab65-5edf3bc15bf1"
#define SND_SLIDE_METAL_METAL_04 "d6d03cb2-5b16-4e31-b7d4-2a81d2a0909b"
#define SND_SLIDE_METAL_METAL_05 "3a46f447-916e-47de-a1e5-95d1af46bd0f"
#define SND_SLIDE_METAL_METAL_06 "cd423231-e70d-4fd2-ad26-f1c6cf5f0610"
#define SND_SLIDE_METAL_PLASTIC SND_NULL
#define SND_SLIDE_METAL_RUBBER "12d97bc0-3c15-4744-b6bd-77d1316eb4f0"
#define SND_SLIDE_METAL_WOOD "4afb6926-a73f-4cb7-85d5-0f9a40107434"
#define SND_SLIDE_METAL_WOOD_02 "349970bf-187d-4bcb-b2cf-e7bb6581590f"
#define SND_SLIDE_METAL_WOOD_03 "64bf6e87-73d4-4cb4-84f7-55cecfd97cd3"
#define SND_SLIDE_METAL_WOOD_04 "0dc670a9-dbe8-41bc-b8ee-4d96d99219d5"
#define SND_SLIDE_METAL_WOOD_05 "6e3cc57b-c9aa-4829-86a1-8e82aeaccb47"
#define SND_SLIDE_METAL_WOOD_06 "c1237f4c-8c88-4da1-bfbc-2af26a8d9e5a"
#define SND_SLIDE_METAL_WOOD_07 "0e1ec243-063b-4dcb-a903-52b8dffed3d2"
#define SND_SLIDE_METAL_WOOD_08 "66736d0f-533d-4007-a8ee-0f27c2034126"
#define SND_SLIDE_PLASTIC_GRAVEL "35092c21-5c48-4b4d-a818-3cf240af2348"
#define SND_SLIDE_PLASTIC_GRAVEL_02 "c37f5776-0020-47e8-89a0-c74cc6f5742d"
#define SND_SLIDE_PLASTIC_GRAVEL_03 "d2fc8db6-2e66-464a-8ccb-f99b61ee4987"
#define SND_SLIDE_PLASTIC_GRAVEL_04 "93cbdb10-6e82-4c0b-a547-7b3b79ac25f6"
#define SND_SLIDE_PLASTIC_GRAVEL_05 "2f6d0542-fcd1-4264-a17b-f57bf5ebf402"
#define SND_SLIDE_PLASTIC_GRAVEL_06 "5b8887d4-3be2-45a0-b25d-85af3b1e6392"
#define SND_SLIDE_PLASTIC_PLASTIC SND_NULL
#define SND_SLIDE_PLASTIC_PLASTIC_02 SND_NULL
#define SND_SLIDE_PLASTIC_PLASTIC_03 SND_NULL
#define SND_SLIDE_PLASTIC_FABRIC "7294d9ad-3e41-4373-992c-a9f21d5d66ad"
#define SND_SLIDE_PLASTIC_FABRIC_02 "58608ce1-f524-472f-b447-bbe6ce4a46e0"
#define SND_SLIDE_PLASTIC_FABRIC_03 "06ae285e-0b34-4ea6-84ab-9c6c31b414fc"
#define SND_SLIDE_PLASTIC_FABRIC_04 "211613db-0461-49bd-9554-5c14ad8b31f6"
#define SND_SLIDE_RUBBER_PLASTIC "a98ffa5a-e48e-4f9d-9242-b9a3210ad84a"
#define SND_SLIDE_RUBBER_PLASTIC_02 "d4136c40-eeaa-49c6-a982-8e5a16f5d93a"
#define SND_SLIDE_RUBBER_PLASTIC_03 "29ec0fb2-0b23-47b2-835b-c83cc7cf9fb0"
#define SND_SLIDE_RUBBER_RUBBER SND_NULL
#define SND_SLIDE_STONE_FLESH SND_NULL
#define SND_SLIDE_STONE_GLASS SND_NULL
#define SND_SLIDE_STONE_METAL SND_NULL
#define SND_SLIDE_STONE_PLASTIC "afd0bcc3-d41a-4572-9e7f-08a29eeb0b8a"
#define SND_SLIDE_STONE_PLASTIC_02 "881b720a-96cf-4128-bb98-5d87e03e93c7"
#define SND_SLIDE_STONE_PLASTIC_03 "293dac42-658a-4c5a-a7a2-6d4c5e5658b0"
#define SND_SLIDE_STONE_RUBBER "0724b946-6a3f-4eeb-bb50-0a3b33120974"
#define SND_SLIDE_STONE_RUBBER_02 "ada93d00-76e2-4bf1-9ad9-493727630717"
#define SND_SLIDE_STONE_STONE "ade766dc-2e75-4699-9b41-7c8e53d2b3f2"
#define SND_SLIDE_STONE_STONE_02 "66698375-6594-47b0-8046-c3973de1291d"
#define SND_SLIDE_STONE_WOOD "174ef324-ed50-4f65-9479-b4da580aeb3c"
#define SND_SLIDE_STONE_WOOD_02 "33d517fd-ff11-4d01-a7b5-0e3abf818dcf"
#define SND_SLIDE_STONE_WOOD_03 "1bac4b63-e6fd-4659-9761-991284cf4582"
#define SND_SLIDE_STONE_WOOD_04 "a7d28564-6821-4c01-a378-cde98fba7ba9"
#define SND_SLIDE_WOOD_FABRIC "22c58e74-22cd-4960-9ab7-5bf08ab824e5"
#define SND_SLIDE_WOOD_FABRIC_02 "0b0ed22e-4a0f-4617-a4cf-20d0f2b78ccc"
#define SND_SLIDE_WOOD_FABRIC_03 "42b80abb-9823-4b74-a210-326ccf23636a"
#define SND_SLIDE_WOOD_FABRIC_04 "8538298a-1e6b-4b69-a9ee-5e01e4a02b35"
#define SND_SLIDE_WOOD_FLESH "84b026f3-a11c-4366-aa7c-07edcd89b2bb"
#define SND_SLIDE_WOOD_FLESH_02 "2644191f-4848-47ba-8ba7-bddc0bfcb3da"
#define SND_SLIDE_WOOD_FLESH_03 "edb978e4-9be9-456f-b2fc-e8502bfe25be"
#define SND_SLIDE_WOOD_FLESH_04 "bf2b972e-f42a-46d7-b53e-5fca38f5bc61"
#define SND_SLIDE_WOOD_GRAVEL "d063bb4d-0eff-4403-a6cc-c6c6c073e624"
#define SND_SLIDE_WOOD_GRAVEL_02 "511eb679-6d93-47fa-9141-c3ef9261c919"
#define SND_SLIDE_WOOD_GRAVEL_03 "4ed1fd43-4707-4e5c-b7b7-21ec4e72c1ac"
#define SND_SLIDE_WOOD_GRAVEL_04 "99ea89b3-aa76-4b87-99c8-670365c6d8c3"
#define SND_SLIDE_WOOD_PLASTIC "505ca3c4-94a0-4e28-8fc1-ea72a428396b"
#define SND_SLIDE_WOOD_PLASTIC_02 "fc404011-df71-4ed0-8f22-b72bdd18f63c"
#define SND_SLIDE_WOOD_PLASTIC_03 "67dbe225-26df-4efa-8c8b-f1ef669fec45"
#define SND_SLIDE_WOOD_RUBBER SND_NULL
#define SND_SLIDE_WOOD_WOOD "3079d569-b3e8-4df4-9e09-f0d4611213ef"
#define SND_SLIDE_WOOD_WOOD_02 "276b093d-dbcb-4279-a89e-a54b0b416af6"
#define SND_SLIDE_WOOD_WOOD_03 "c3f3ca5e-2768-4081-847f-247139310fdb"
#define SND_SLIDE_WOOD_WOOD_04 "f08d44b8-ff87-4a98-9561-c72f1f2fec81"
#define SND_SLIDE_WOOD_WOOD_05 "2d8a58cf-f139-4238-8503-27d334d05c85"
#define SND_SLIDE_WOOD_WOOD_06 "e157ebbd-b12d-4225-aa7c-d47b026a7687"
#define SND_SLIDE_WOOD_WOOD_07 "35e17956-e7b4-478c-b274-e37db8a166b2"
#define SND_SLIDE_WOOD_WOOD_08 "e606fc65-0643-4964-9979-ff964fa6a62c"
#define SND_ROLL_FLESH_FLESH SND_NULL
#define SND_ROLL_FLESH_PLASTIC "89a0be4c-848d-4a6e-8886-298f56c2cff4"
#define SND_ROLL_FLESH_PLASTIC_02 "beb06343-1aa1-4af2-b320-5d2ec31c53b1"
#define SND_ROLL_FLESH_RUBBER SND_NULL
#define SND_ROLL_GLASS_GRAVEL "ba795c74-7e09-4572-b495-e09886a46b86"
#define SND_ROLL_GLASS_GRAVEL_02 "4c93c3b7-14cb-4d9b-a7df-628ad935f1f2"
#define SND_ROLL_GLASS_FLESH SND_NULL
#define SND_ROLL_GLASS_GLASS SND_NULL
#define SND_ROLL_GLASS_PLASTIC SND_NULL
#define SND_ROLL_GLASS_RUBBER SND_NULL
#define SND_ROLL_GLASS_WOOD "d40b1f48-a061-4f6e-b18f-4326a3dd5c29"
#define SND_ROLL_GLASS_WOOD_02 "78cd407a-bb36-4163-ba09-20f2e6d9d44b"
#define SND_ROLL_GRAVEL_GRAVEL "c7354cc3-6df5-4738-8dbb-b28a6ac46a05"
#define SND_ROLL_GRAVEL_GRAVEL_02 "01d194c4-72a6-47df-81a5-8db430faff87"
#define SND_ROLL_METAL_FABRIC "ce6e6564-20fd-48e4-81e2-cd3f81c00a3e"
#define SND_ROLL_METAL_FABRIC_02 "fc4d0065-32f6-4bb0-9f3f-f4737eb27163"
#define SND_ROLL_METAL_FLESH SND_NULL
#define SND_ROLL_METAL_GLASS "63d530bb-a41f-402b-aa1f-be6b11959809"
#define SND_ROLL_METAL_GLASS_02 "f62642c2-6db5-4faa-8b77-939067d837c3"
#define SND_ROLL_METAL_GLASS_03 "db5b5a15-2817-4cd7-9f0b-9ad49b5e52c8"
#define SND_ROLL_METAL_GRAVEL "447164e3-9646-4c1a-a16d-606892891466"
#define SND_ROLL_METAL_METAL "c3c22cf3-5d1f-4cc3-b4b5-708b9f65979c"
#define SND_ROLL_METAL_METAL_02 "d8386277-a1ea-460e-b6fd-bb285c323bf1"
#define SND_ROLL_METAL_METAL_03 "69ee1f02-f9cd-4c8b-aedd-39a2d6705680"
#define SND_ROLL_METAL_METAL_04 "5cc6b5fd-26ce-47ad-b21d-3a7c190dd375"
#define SND_ROLL_METAL_PLASTIC "c6a9bbf6-df15-4713-9f84-7237fce4051e"
#define SND_ROLL_METAL_PLASTIC_01 "0fedb59b-2dbb-4cec-b6cc-8559ec027749"
#define SND_ROLL_METAL_RUBBER SND_NULL
#define SND_ROLL_METAL_WOOD "1d76af57-01b1-4c73-9a1d-69523bfa50ea"
#define SND_ROLL_METAL_WOOD_02 "78aa4e71-8e7c-4b90-a561-3ebdc639f99b"
#define SND_ROLL_METAL_WOOD_03 "777d95bf-962f-48fa-93bf-8c1806557d72"
#define SND_ROLL_METAL_WOOD_04 "1833da76-45e2-4a8b-97da-d17413e056c9"
#define SND_ROLL_METAL_WOOD_05 "b13e1232-3d8d-42e9-92ec-b30f9f823962"
#define SND_ROLL_PLASTIC_FABRIC "616a1f03-209f-4c55-b264-83a000b6ef0a"
#define SND_ROLL_PLASTIC_PLASTIC "873f3d82-00b2-4082-9c69-7aef3461dba1"
#define SND_ROLL_PLASTIC_PLASTIC_02 "cc39879f-ebc8-4405-a4fc-8342f5bed31e"
#define SND_ROLL_RUBBER_PLASTIC SND_NULL
#define SND_ROLL_RUBBER_RUBBER SND_NULL
#define SND_ROLL_STONE_FLESH SND_NULL
#define SND_ROLL_STONE_GLASS SND_NULL
#define SND_ROLL_STONE_METAL SND_NULL
#define SND_ROLL_STONE_PLASTIC "155f65a8-cae7-476e-a58b-fd362be7fd0e"
#define SND_ROLL_STONE_RUBBER SND_NULL
#define SND_ROLL_STONE_STONE "67d56e3f-6ed5-4658-9418-14f020c38b11"
#define SND_ROLL_STONE_STONE_02 "43d99d10-d75b-4246-accf-4ceb2c909aa7"
#define SND_ROLL_STONE_STONE_03 "f04e83ff-eed7-4e99-8f45-eb97e4e1d3b7"
#define SND_ROLL_STONE_STONE_04 "10fcc5ad-fa89-48d6-b774-986b580c1efc"
#define SND_ROLL_STONE_STONE_05 "3d86f5a3-1a91-49d9-b99f-8521a7422497"
#define SND_ROLL_STONE_WOOD "53e46fb7-6c21-4fe1-bffe-0567475d48fa"
#define SND_ROLL_STONE_WOOD_02 "5eba8c9a-a014-4299-87f1-315c45ec795b"
#define SND_ROLL_STONE_WOOD_03 "ea6c05fc-6e9c-4526-8a20-bc47810bb549"
#define SND_ROLL_STONE_WOOD_04 "64618cbf-3f42-4728-8094-e77807545efb"
#define SND_ROLL_WOOD_FLESH "26ee185d-6fc3-49f8-89ba-51cab04cfc42"
#define SND_ROLL_WOOD_FLESH_02 "334faa25-1e80-4c99-b29f-4c9c2a3d079d"
#define SND_ROLL_WOOD_FLESH_03 "2f876626-4dce-4f71-a91e-a25302edfab7"
#define SND_ROLL_WOOD_FLESH_04 "d6877aac-07fc-4931-bcde-585f223802ad"
#define SND_ROLL_WOOD_GRAVEL "2a23ebb5-a4a2-4f1f-8d75-7384239354aa"
#define SND_ROLL_WOOD_GRAVEL_02 "208bf26d-f097-450c-95c4-9d26317c613c"
#define SND_ROLL_WOOD_GRAVEL_03 "a26ecaf4-92c6-4e32-9864-56b7c70cab8e"
#define SND_ROLL_WOOD_PLASTIC "71c1000a-9f16-4cc3-8ede-ec4aa3bf5723"
#define SND_ROLL_WOOD_PLASTIC_02 "7bc20ba6-1e6d-4eea-83ad-c5cc3ae0e409"
#define SND_ROLL_WOOD_RUBBER SND_NULL
#define SND_ROLL_WOOD_WOOD "2cc8eec4-bb4a-4ba8-b783-71526ec708e8"
#define SND_ROLL_WOOD_WOOD_02 "0a1f8070-a11a-4b4c-b260-5ffb6acb0a5d"
#define SND_ROLL_WOOD_WOOD_03 "160bef64-da9c-4be8-b07b-a5060b501700"
#define SND_ROLL_WOOD_WOOD_04 "1c62ea16-cc60-48ed-829a-68b8f4cf0c1c"
#define SND_ROLL_WOOD_WOOD_05 "be9cc8fe-b920-4bf5-8924-453088cbc03f"
#define SND_ROLL_WOOD_WOOD_06 "a76cfe60-56b0-43b1-8f31-93e56947d78b"
#define SND_ROLL_WOOD_WOOD_07 "0c6aa481-b5bc-4573-ae83-8e16ff27e750"
#define SND_ROLL_WOOD_WOOD_08 "214ab2c7-871a-451b-b0db-4c5677199011"
#define SND_ROLL_WOOD_WOOD_09 "0086e4db-3ac6-4545-b414-6f359bedd9a5"
#define SND_SLIDE_STONE_STONE_01 "2a7dcbd1-d3e6-4767-8432-8322648e7b9d"
#define SND_STONE_DIRT_01 "97727335-392c-4338-ac4b-23a7883279c2"
#define SND_STONE_DIRT_02 "cbe75eb2-3375-41d8-9e3f-2ae46b4164ed"
#define SND_STONE_DIRT_03 "31e236ee-001b-4c8e-ad6c-c2074cb64357"
#define SND_STONE_DIRT_04 "c8091652-e04b-4a11-84ba-15dba06e7a1b"
#define SND_STONE_STONE_02 "ba4ef5ac-7435-4240-b826-c24ba8fa5a78"
#define SND_STONE_STONE_04 "ea296329-0f09-4993-af1b-e6784bab1dc9"
#define SND_AVATAR_WALK "e8af4a28-aa83-4310-a7c4-c047e15ea0df"
#define SND_ALERT "ed124764-705d-d497-167a-182cd9fa2e6c"
#define SND_CLICK "4c8c3c77-de8d-bde2-b9b8-32635e0fd4a6"
#define SND_ERROR "cb58f920-5b52-8a49-b81c-e532adbbe6f1"
#define SND_DAMAGE_FEMALE "219c5d93-6c09-31c5-fb3f-c5fe7495c115"
#define SND_DAMAGE_MALE "e057c244-5768-1056-c37e-1537454eeb62"
#define SND_IM_MESSAGE "67cc2844-00f3-2b3c-b991-6418d01e1bb7"
#define SND_IM_START "c825dfbc-9827-7e02-6507-3713d18916c1"
#define SND_IM "67cc2844-00f3-2b3c-b991-6418d01e1bb7"
#define SND_INVALID "4174f859-0d3d-c517-c424-72923dc21f65"
#define SND_KEYBOARD "5e191c7b-8996-9ced-a177-b2ac32bfea06"
#define SND_MONEY_INCREASE "77a018af-098e-c037-51a6-178f05877c6f"
#define SND_MONEY_REDUCTION "104974e3-dfda-428b-99ee-b0d4e748d3a3"
#define SND_INVALID_KEYSTROKE "2ca849ba-2885-4bc3-90ef-d4987a5b983a"
#define SND_OBJECT_RUBBER "212b6d1e-8d9c-4986-b3aa-f3c6df8d987d"
#define SND_OBJECT_PLASTIC "d55c7f3c-e1c3-4ddc-9eff-9ef805d9190e"
#define SND_OBJECT_FLESH "2d8c6f51-149e-4e23-8413-93a379b42b67"
#define SND_OBJECT_WOOD "6f00669f-15e0-4793-a63e-c03f62fee43a"
#define SND_OBJECT_GLASS "85cda060-b393-48e6-81c8-2cfdfb275351"
#define SND_OBJECT_METAL "d1375446-1c4d-470b-9135-30132433b678"
#define SND_OBJECT_CREATE "3c8fc726-1fd6-862d-fa01-16c5b2568db6"
#define SND_OBJECT_DELETE "0cb7b00a-4c10-6948-84de-a93c09af2ba9"
#define SND_OBJECT_REZ "f4a0660f-5446-dea2-80b7-6482a082803c"
#define SND_PIE_APPEAR "8eaed61f-92ff-6485-de83-4dcc938a478e"
#define SND_PIE_SLICE0 "d9f73cf8-17b4-6f7a-1565-7951226c305d"
#define SND_PIE_SLICE1 "f6ba9816-dcaf-f755-7b67-51b31b6233e5"
#define SND_PIE_SLICE2 "7aff2265-d05b-8b72-63c7-dbf96dc2f21f"
#define SND_PIE_SLICE3 "09b2184e-8601-44e2-afbb-ce37434b8ba1"
#define SND_PIE_SLICE4 "bbe4c7fc-7044-b05e-7b89-36924a67593c"
#define SND_PIE_SLICE5 "d166039b-b4f5-c2ec-4911-c85c727b016c"
#define SND_PIE_SLICE6 "242af82b-43c2-9a3b-e108-3b0c7e384981"
#define SND_PIE_SLICE7 "c1f334fb-a5be-8fe7-22b3-29631c21cf0b"
#define SND_SNAPSHOT "3d09f582-3851-c0e0-f5ba-277ac5c73fb4"
#define SND_TELEPORT "d7a9a565-a013-2a69-797d-5332baa1a947"
#define SND_THUNDER "e95c96a5-293c-bb7a-57ad-ce2e785ad85f"
#define SND_WARNING "449bc80c-91b6-6365-8fd1-95bd91016624"
#define SND_WINDOW_CLOSE "2c346eda-b60c-ab33-1119-b8941916a499"
#define SND_WINDOW_OPEN "c80260ba-41fd-8a46-768a-6bf236360e3a"
#define SND_APPEARANCE_ANIMATION "6cf2be26-90cb-2669-a599-f5ab7698225f"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment