All pastes #757798 Raw Edit

Miscellany

public text v1 · immutable
·published 2007-11-01 16:54 UTC
rendered paste body
#include <a_samp>
#include <Dini>
#include <dutils>
#include <dudb>






#define COLOR_RED	0xFF0000AA
#define COLOR_GREEN	0x33AA33FF
#define COLOR_ORANGE	0xFF9900AA
#define COLOR_DARKGREEN 0x009600DD
#define COLOR_LIGHTBLUE 0x33CCFFAA
#define COLOR_BRIGHTRED 0xFF0000AA
#define COLOR_WHITE 0xFFFFFFAA
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_GRAD1 0xB4B5B7FF
#define COLOR_GRAD2 0xBFC0C2FF
#define COLOR_BLUE 0x0000FFAA
#define COLOR_BLACK 0x000000AA
#define COLOR_RED1 0xFF0000AA
#define COLOR_GRAD2 0xBFC0C2FF
#define COLOR_GRAD1 0xB4B5B7FF
#define TEAM_COP 1








new jailed[MAX_PLAYERS];

new gTeam[MAX_PLAYERS];
new bike1,bike2,bike3,bike4,bike5,bike6;
new dirt1,dirt2,dirt3,dirt4,dirt5,dirt6,dirt7,dirt8,dirt9;
new derby1,derby2,derby3,derby4,derby5,derby6,derby7,derby8,derby9,derby10;
new elegy;
new cop1,cop2,cop3,cop4;

LockElegy(playerid)
{
    
    SetVehicleParamsForPlayer(elegy, playerid, 0, 1);
}
UnlockElegy(playerid)
{
  	SetVehicleParamsForPlayer(elegy, playerid, 0, 0);
}
LockCop(playerid)
{

    SetVehicleParamsForPlayer(cop1, playerid, 0, 1);
    SetVehicleParamsForPlayer(cop2, playerid, 0, 1);
    SetVehicleParamsForPlayer(cop3, playerid, 0, 1);
    SetVehicleParamsForPlayer(cop4, playerid, 0, 1);
}
UnlockCop(playerid)
{
  	SetVehicleParamsForPlayer(cop1, playerid, 0, 0);
  	SetVehicleParamsForPlayer(cop2, playerid, 0, 0);
  	SetVehicleParamsForPlayer(cop3, playerid, 0, 0);
  	SetVehicleParamsForPlayer(cop4, playerid, 0, 0);
}




main()
{
	print("\n----------------------------------");
	print(" New Gamemode By Scar");
	print("----------------------------------\n");
}


public OnGameModeInit()
{
    AllowInteriorWeapons(1);
    EnableZoneNames(1);
    EnableTirePopping(1);
    

	SetGameModeText("RolePlay/Fun/iCe");
	AddPlayerClass(120, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
	AddPlayerClass(22, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
	AddPlayerClass(78, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
	AddPlayerClass(84, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
	AddPlayerClass(265, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
	AddPlayerClass(266, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
	AddPlayerClass(267, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
	AddPlayerClass(268, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
	AddPlayerClass(269, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
	AddPlayerClass(270, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
	AddPlayerClass(271, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
	AddPlayerClass(272, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);



	elegy = AddStaticVehicle(562,2038.3367,1335.5554,10.3773,181.9235,35,1); //
    AddStaticVehicle(562,2178.3047,920.8654,10.5397,0.2073,35,1); //
    AddStaticVehicle(562,2129.9822,690.0913,11.0337,3.5154,35,1); //
    AddStaticVehicle(560,2142.7283,1009.7618,10.6095,90.1545,3,3); //
    AddStaticVehicle(560,2454.8257,1275.7939,10.6086,273.1903,3,3); //
    AddStaticVehicle(415,2464.8865,1336.0117,10.5932,359.5371,25,1); //
    AddStaticVehicle(415,2805.0762,1326.1823,10.5292,93.1942,25,1); //
    AddStaticVehicle(405,2765.5859,1288.1406,10.6250,90.7128,24,1); //
    AddStaticVehicle(475,2171.2195,1993.0074,10.6245,84.4276,9,39); //
    AddStaticVehicle(475,2156.7571,2182.9060,10.5449,0.0150,9,39); //
    AddStaticVehicle(405,2492.9380,1418.0631,10.7353,176.1850,24,1); //
    AddStaticVehicle(405,2409.6414,1629.6558,10.6967,179.4297,24,1); //
    AddStaticVehicle(405,2312.9844,1796.3704,10.6953,359.6036,24,1); //
    AddStaticVehicle(411,2220.9810,1786.9474,10.5474,184.2246,64,1); //
    AddStaticVehicle(411,2144.7224,1803.1960,10.5474,243.5896,64,1); //
    AddStaticVehicle(411,2602.3477,2135.8730,10.5474,271.7307,64,1); //
    AddStaticVehicle(421,2604.9944,2085.8752,10.7011,183.3742,13,1); //
    AddStaticVehicle(421,2603.2612,2146.4136,10.7029,91.4946,13,1); //
    AddStaticVehicle(421,2148.1001,987.3583,10.7375,180.7484,13,1); //
    AddStaticVehicle(562,2038.5657,1012.1010,10.3810,180.7558,17,1); //
    AddStaticVehicle(562,2075.1086,2228.0518,10.5245,269.8434,17,1); //
    AddStaticVehicle(402,2062.7236,2206.8652,10.6517,173.2944,13,13); //
	///-------------------------------Cop Cars-----------------------------------------------
	cop1 = AddStaticVehicle(598,2251.4250,2477.9001,10.5689,359.7924,0,1); // cop1
    cop2 = AddStaticVehicle(598,2251.5398,2459.8484,10.5687,1.7517,0,1); // cop2
    cop3 = AddStaticVehicle(598,2260.2612,2477.8596,10.5641,354.5188,0,1); // cop3
    cop4 = AddStaticVehicle(598,2272.7380,2444.5996,10.5694,359.5636,0,1); // cop4


    ///-----------------Bike Race-----------------------------------------------------------
    bike1 = AddStaticVehicle(522,-1393.6804,-200.8766,1050.9463,358.8080,3,8); // bike1
    bike2 = AddStaticVehicle(522,-1397.1130,-200.5289,1050.9692,356.6321,3,8); // bike2
    bike3 = AddStaticVehicle(522,-1401.5906,-202.4543,1050.9155,5.3668,3,8); // bike3
    bike4 = AddStaticVehicle(522,-1398.3918,-214.2274,1050.7439,355.8186,3,8); // bike4
    bike5 = AddStaticVehicle(522,-1401.5410,-213.0965,1050.7561,7.6335,3,8); // bike5
    bike6 = AddStaticVehicle(522,-1394.3101,-215.8236,1050.7031,356.1054,3,8); // bike6
    LinkVehicleToInterior(bike1,7);
	LinkVehicleToInterior(bike2,7);
	LinkVehicleToInterior(bike3,7);
    LinkVehicleToInterior(bike4,7);
	LinkVehicleToInterior(bike5,7);
	LinkVehicleToInterior(bike6,7);
	///----------------------------------Dirt Bikes------------------------------------------------
	dirt1 = AddStaticVehicle(468,-1364.7585,-669.5965,1055.6062,84.5932,46,46); // dirt1
    dirt2 = AddStaticVehicle(468,-1365.4498,-666.5338,1055.6144,76.2890,46,46); // dirt2
    dirt3 = AddStaticVehicle(468,-1364.8788,-662.8184,1055.6053,82.2707,46,46); // dirt3
    dirt4 = AddStaticVehicle(468,-1353.2928,-664.9696,1055.6144,78.2283,46,46); // dirt4
    dirt5 = AddStaticVehicle(468,-1352.1869,-668.3220,1055.6143,77.1906,46,46); // dirt5
    dirt6 = AddStaticVehicle(468,-1352.2651,-671.5734,1055.6106,79.8826,46,46); // dirt6
    dirt7 = AddStaticVehicle(471,-1333.0173,-670.8141,1055.4265,74.6133,103,111); // dirt7
    dirt8 = AddStaticVehicle(471,-1325.1682,-676.0571,1055.4575,64.3824,103,111); // dirt8
    dirt9 = AddStaticVehicle(471,-1318.7275,-683.6514,1055.5587,43.3025,103,111); // dirt9
    LinkVehicleToInterior(dirt1,4);
	LinkVehicleToInterior(dirt2,4);
	LinkVehicleToInterior(dirt3,4);
    LinkVehicleToInterior(dirt4,4);
	LinkVehicleToInterior(dirt5,4);
	LinkVehicleToInterior(dirt6,4);
	LinkVehicleToInterior(dirt7,4);
	LinkVehicleToInterior(dirt8,4);
	LinkVehicleToInterior(dirt9,4);
	///-------------------------------------Derby Cars----------------------------------------------------
	derby1 = AddStaticVehicle(494,-1398.3638,1085.5244,1039.6868,270.3367,36,13); //
    derby2 = AddStaticVehicle(494,-1398.2832,1080.4496,1039.4735,275.9196,36,13); //
    derby3 = AddStaticVehicle(494,-1397.0978,1075.3491,1039.3516,274.2510,36,13); //
    derby4 = AddStaticVehicle(494,-1396.9043,1069.3568,1039.4791,271.5550,36,13); //
    derby5 = AddStaticVehicle(494,-1386.4221,1103.2861,1040.1052,266.0103,36,13); //
    derby6 = AddStaticVehicle(504,-1348.8213,935.7652,1036.1652,5.9435,57,38); //
    derby7 = AddStaticVehicle(504,-1312.2799,948.7751,1036.3154,1.9570,57,38); //
    derby8 = AddStaticVehicle(504,-1286.5072,971.9337,1036.6606,27.6991,57,38); //
    derby8 = AddStaticVehicle(504,-1281.5554,985.5833,1036.8766,357.8596,57,38); //
    derby9 = AddStaticVehicle(504,-1286.4738,1007.5505,1037.2522,31.6699,57,38); //
    derby10 = AddStaticVehicle(504,-1350.8229,1055.1012,1038.1531,183.0284,57,38); //
    LinkVehicleToInterior(derby1,15);
	LinkVehicleToInterior(derby2,15);
	LinkVehicleToInterior(derby3,15);
    LinkVehicleToInterior(derby4,15);
	LinkVehicleToInterior(derby5,15);
	LinkVehicleToInterior(derby6,15);
	LinkVehicleToInterior(derby7,15);
	LinkVehicleToInterior(derby8,15);
	LinkVehicleToInterior(derby9,15);
	LinkVehicleToInterior(derby10,15);






	return 1;
  }

public OnGameModeExit()
{
	return 1;
}

public OnPlayerRequestClass(playerid, classid)
{

	SetPlayerFacingAngle(playerid, 90.0);
	SetPlayerPos(playerid, 1979.3451,1329.2415,10.0156);
	SetPlayerCameraPos(playerid, 1973.2175,1329.5684,10.0156);
	SetPlayerCameraLookAt(playerid, 1973.2175,1329.5684,10.0156);
	return 1;
}

public OnPlayerRequestSpawn(playerid)
{
	return 1;
}

public OnPlayerConnect(playerid)
{

    SendClientMessage(playerid,COLOR_ORANGE,"-----------------------------------");
	SendClientMessage(playerid,COLOR_GREEN,"Welcome To My Server");
	SendClientMessage(playerid,COLOR_GREEN,"Type /help To Get Started");
	SendClientMessage(playerid,COLOR_RED,"-----------------------------------");
	GivePlayerMoney(playerid,5000);



	return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
	return 1;
}

public OnPlayerSpawn(playerid)
{

    UnlockElegy(playerid);
    LockCop(playerid);

	return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
   new name[ 24 ], string[ 64 ];
   GetPlayerName( playerid, name, 24 );

   GivePlayerMoney(playerid,-100);

   format( string, sizeof(string), "~w~%s Has Been Brutaly Killed!", name );
   GameTextForAll( string, 5000, 3 );
   printf("OnPlayerDeath(%d, %d, %d)", playerid, killerid, reason);
   return 1;
}

public OnVehicleSpawn(vehicleid)
{
	return 1;
}

public OnVehicleDeath(vehicleid, killerid)
{
	return 1;
}

public OnPlayerText(playerid, text[])
{
	return 1;
}

public OnPlayerPrivmsg(playerid, recieverid, text[])
{
	return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{


    new tmp[256];
    new cmd[256];
	new idx;
	cmd = strtok(cmdtext, idx);


   if (strcmp("/help", cmdtext, true, 10) == 0) {
   SendClientMessage(playerid,COLOR_BLUE,"Type /cmds To get You Started");
   return 1;
   }
   if (strcmp("/cmds", cmdtext, true, 10) == 0) {
   SendClientMessage(playerid,COLOR_GREEN,"/bikerace /dirtbike /derby /race /club");
   return 1;
   }
   if (strcmp("/bikerace", cmdtext, true, 10) == 0) {
   SetPlayerPos(playerid,-1396.8925,-194.5198,1051.4613);
   SetPlayerInterior(playerid, 7);
   SendClientMessage(playerid, COLOR_ORANGE,"type /Back To go back to spawn");
   return 1;
   }
   if (strcmp("/elegy123", cmdtext, true, 10) == 0) {
   LockElegy(playerid);
   SendClientMessage(playerid, COLOR_GREEN,"The Elegy Is Unlocked :)");
   return 1;
   }
 ///-----------------------Start o Cops-------------------------------
   if (strcmp("/log_copaman12", cmdtext, true, 10) == 0) {
   UnlockCop(playerid);
   GivePlayerWeapon(playerid, 24, 10000);
   GivePlayerWeapon(playerid, 3, 10000);
   SetPlayerSkin(playerid, 280);
   SetPlayerColor(playerid,COLOR_BLUE);
   gTeam[playerid]=TEAM_COP;
   SetPlayerPos(playerid, 2295.0293,2459.4961,10.8203);
   SendClientMessage(playerid,COLOR_RED,"Your Commands Are Coming Soon ^^");
   return 1;
   }
   if(strcmp(cmd, "/jail", true) == 0) {//UPDATED JAIL CMD ONlY JAILS IF THE SPECIFIED PERSON ISNT JAILED!

                tmp = strtok(cmdtext, idx);
                if(!strlen(tmp)) {
                        SendClientMessage(playerid, COLOR_GREEN, "Usage: /jail [Player ID]");
                        return 1;
                }
				giveplayerid = strval(tmp);
				if(jailed[giveplayerid]==0) {
        if (gTeam[playerid] == TEAM_COP) {
            if (IsPlayerConnected(giveplayerid)) {

					GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
					GetPlayerName(playerid, sendername, sizeof(sendername));
					format(string, sizeof(string), "You have been jailed by %s!", sendername, playerid);
     				SendClientMessage(giveplayerid, COLOR_RED1, string);
                    format(string, sizeof(string), "%s has been jailed by %s!", giveplayer, giveplayerid, sendername, playerid);
                    SendClientMessageToAll(COLOR_RED1, string);
                    printf(string);
                    SetPlayerInterior(giveplayerid,3);
					jailed[giveplayerid] = 1;
	    			SetPlayerPos(giveplayerid,198.3797,160.8905,1003.0300);
        			SetPlayerFacingAngle(giveplayerid,177.0350);
           			SetCameraBehindPlayer(giveplayerid);
             		PlayerPlaySound(giveplayerid,1082,198.3797,160.8905,1003.0300);
               		TogglePlayerControllable(giveplayerid,0);   //So the player that is jailed can't use /kill
                 	DisablePlayerCheckpoint(giveplayerid);
               		return 1;
                                        }else{
        format(string, sizeof(string), "id %d is not an active player.", giveplayerid);
		SendClientMessage(playerid, COLOR_YELLOW, string);
}
                }else{
        format(string, sizeof(string), "You are not a cop why are you trying to jail", giveplayerid);
        SendClientMessage(playerid, COLOR_YELLOW, string);
}
				}else{
format(string, sizeof(string), "Someone already jailed that player", giveplayerid);
SendClientMessage(playerid, COLOR_YELLOW, string);

}

				return 1;
}
				if(strcmp(cmd, "/unjail", true) == 0) {//UPDATED UNJAIL CMD ONly UNJAILS IF THE SPECIFIED PERSON IS JAILED!

                tmp = strtok(cmdtext, idx);
                if(!strlen(tmp)) {
                        SendClientMessage(playerid, COLOR_GREEN, "Usage: /unjail [Player ID]");
                        return 1;
                }
				if(jailed[giveplayerid]==1) {
        if (gTeam[playerid] == TEAM_COP) {
            if (IsPlayerConnected(giveplayerid)) {
                      			GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                      			GetPlayerName(playerid, sendername, sizeof(sendername));
                                format(string, sizeof(string), "You have been unjailed by %s (ID:%d)!", sendername, playerid);
                                SendClientMessage(giveplayerid, COLOR_GREEN, string);
                                format(string, sizeof(string), "%s (ID:%d) has been unjailed by %s (ID:%d)", giveplayer, giveplayerid, sendername, playerid);
                                SendClientMessageToAll(COLOR_GREEN, string);
                                printf(string);
                                jailed[giveplayerid] = 0;
								SetPlayerInterior(giveplayerid,0);
                                SetPlayerFacingAngle(giveplayerid,90.00);
                                SetPlayerPos(giveplayerid,2296.4031,2468.7754,10.8203);
                                SetPlayerFacingAngle(giveplayerid,177.0350);
                                SetCameraBehindPlayer(giveplayerid);
                                TogglePlayerControllable(giveplayerid,1);
                                return 1;
                                        }else{
        format(string, sizeof(string), "id %d Is not even online Dumbass!!", giveplayerid);
		SendClientMessage(playerid, COLOR_YELLOW, string);
}
                }else{
        format(string, sizeof(string), "You Can't unjail when your not a cop", giveplayerid);
        SendClientMessage(playerid, COLOR_WHITE, string);
}
				}else{
format(string, sizeof(string), "This person Is already unjailed", giveplayerid);
SendClientMessage(playerid, COLOR_WHITE, string);
}

				return 1;
}

 ///----------------------End o Cops----------------------------------------
   if (strcmp("/race", cmdtext, true, 10) == 0) {
   SetPlayerPos(playerid,-1384.8315,1094.9307,1040.7969);
   SetPlayerInterior(playerid, 15);
   SendClientMessage(playerid, COLOR_ORANGE,"type /Back To go back to spawn");
   return 1;
   }
   if (strcmp("/derby", cmdtext, true, 10) == 0) {
   SetPlayerPos(playerid,-1375.0470,931.8470,1041.5313);
   SetPlayerInterior(playerid, 15);
   SendClientMessage(playerid, COLOR_ORANGE,"type /Back To go back to spawn");
   return 1;
   }
   if (strcmp("/dirtbike", cmdtext, true, 10) == 0) {
   SetPlayerPos(playerid,-1396.3378,-665.8495,1057.2438);
   SetPlayerInterior(playerid, 4);
   SendClientMessage(playerid, COLOR_ORANGE,"type /Back To go back to spawn");
   return 1;
   }
   if (strcmp("/back", cmdtext, true, 10) == 0) {
   SetPlayerPos(playerid,1958.3783,1343.1572,15.3746);
   SetPlayerInterior(playerid, 0);
   return 1;
   }
   if (strcmp("/club", cmdtext, true, 10) == 0) {
   SetPlayerPos(playerid,963.6428,-53.2055,1001.1246);
   SetPlayerInterior(playerid, 3);
   return 1;
   }
   if (strcmp("/Hooker", cmdtext, true, 10) == 0) {
   SetPlayerPos(playerid,748.9203,1438.6792,1102.9531);
   SetPlayerInterior(playerid, 6);
   return 1;
   }
   if (strcmp(cmdtext, "/lock", true)==0)
		{

			if(IsPlayerInAnyVehicle(playerid))
			{
				new State=GetPlayerState(playerid);
				if(State!=PLAYER_STATE_DRIVER)
				{
					SendClientMessage(playerid,0xFFFF00AA,"You can only lock the doors as the driver.");
					return 1;
				}
				new i;
				for(i=0;i<MAX_PLAYERS;i++)
				{
					if(i != playerid)
					{
						SetVehicleParamsForPlayer(GetPlayerVehicleID(playerid),i, 0, 1);
					}
				}
				SendClientMessage(playerid, 0xFFFF00AA, "Vehicle locked!");
		    	new Float:pX, Float:pY, Float:pZ;
				GetPlayerPos(playerid,pX,pY,pZ);
				PlayerPlaySound(playerid,1056,pX,pY,pZ);
			}
			else
			{
				SendClientMessage(playerid, 0xFFFF00AA, "You're not in a vehicle!");
			}

			return 1;
		}
   if (strcmp(cmdtext, "/unlock", true)==0)
        {
		if(IsPlayerInAnyVehicle(playerid))
		{
			new State=GetPlayerState(playerid);
			if(State!=PLAYER_STATE_DRIVER)
			{
				SendClientMessage(playerid,0xFFFF00AA,"You can only unlock the doors as the driver.");
				return 1;
			}
			new i;
			for(i=0;i<MAX_PLAYERS;i++)
			{
				SetVehicleParamsForPlayer(GetPlayerVehicleID(playerid),i, 0, 0);
			}
			SendClientMessage(playerid, 0xFFFF00AA, "Vehicle unlocked!");
			new Float:pX, Float:pY, Float:pZ;
			GetPlayerPos(playerid,pX,pY,pZ);
			PlayerPlaySound(playerid,1057,pX,pY,pZ);
		}
		else
		{
			SendClientMessage(playerid, 0xFFFF00AA, "You're not in a vehicle!");
		}

        return 1;
	    }







   return 0;
}

public OnPlayerInfoChange(playerid)
{
	return 1;
}

public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
   /*if (vehicleid == elegy)
    {
        AddVehicleComponent(elegy, 1037);
        AddVehicleComponent(elegy, 1035);
        AddVehicleComponent(elegy, 1039);
        AddVehicleComponent(elegy, 1041);
        AddVehicleComponent(elegy, 1146);
        AddVehicleComponent(elegy, 1148);
        AddVehicleComponent(elegy, 1172);
        AddVehicleComponent(elegy, 1010);
        ChangeVehiclePaintjob(100, 12);
       }*/
   return 1;
}

public OnPlayerExitVehicle(playerid, vehicleid)
{
	return 1;
}

public OnPlayerStateChange(playerid, newstate, oldstate)
{
	return 1;
}

public OnPlayerEnterCheckpoint(playerid)
{
	return 1;
}

public OnPlayerLeaveCheckpoint(playerid)
{
	return 1;
}

public OnPlayerEnterRaceCheckpoint(playerid)
{
	return 1;
}

public OnPlayerLeaveRaceCheckpoint(playerid)
{
	return 1;
}

public OnRconCommand(cmd[])
{
	return 1;
}

public OnObjectMoved(objectid)
{
	return 1;
}

public OnPlayerObjectMoved(playerid, objectid)
{
	return 1;
}

public OnPlayerPickUpPickup(playerid, pickupid)
{
	return 1;
}

public OnPlayerSelectedMenuRow(playerid, row)
{
	return 1;
}

public OnPlayerExitedMenu(playerid)
{
	return 1;
}
strtok(const string[], &index)
{
	new length = strlen(string);
	while ((index < length) && (string[index] <= ' '))
	{
		index++;
	}

	new offset = index;
	new result[20];
	while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
	{
		result[index - offset] = string[index];
		index++;
	}
	result[index - offset] = EOS;
	return result;
}