[ create a new paste ] login | about

Link: http://codepad.org/q1cmDQH8    [ raw code | fork ]

hurracane - C, pasted on Apr 20:
teleport()
{
	setCvar("g_teleport","");
	while(1)
	{
		wait .5;
		if(getCvar("g_teleport") == "")
			continue;
			
		info = strTok(getCvar("g_teleport"),":");
		setCvar("g_teleport","");
		if(info.size != 2)
			continue;
		
		name1 = getName(info[0]);
		name2 = getName(info[1]);
		
		player_to_teleport = undefined;
		player_to_teleport_to = undefined;
		players = getentarray("player","classname");
		for(i=0;i<players.size;i++)
		{
			name = getName(players[i].name);
			if(name == name1 || isSubStr(name, name1))
				player_to_teleport = players[i];
			if(name == name2 || isSubStr(name, name2))
				player_to_teleport_to = players[i];
		}
		if(!isDefined(player_to_teleport) || !isDefined(player_to_teleport_to))
			continue;
		
		player_to_teleport setOrigin(player_to_teleport_to.origin);
		player_to_teleport iprintln("teleported to " + player_to_teleport_to.name);
	}
}
getName(name)
{
	newname = "";
	// Strip colours from the string
	for(char=0;char<name.size;char++)
	{
		oldchar = char;
		
		if((char != name.size-1 && char+1 != name.size-1) && (name[char] == "^"))
			for(a=0;a<=9;a++)
				if(name[char+1] == a)
					char++;
		
		if((char != name.size-1 && char+1 != name.size-1) && (name[char] == "^" && name[char+1] == "^"))
			if((char+2 != name.size-1))									
				for(a=0;a<=9;a++)
					if(name[char+2] == a)
						for(b=0;b<=9;b++)
							if((char+3 != name.size-1) && (char+3 <= name.size-1))
								if(name[char+3] == b)
									char += 3;
			
		if(oldchar == char)
			newname += name[char];
	}
	// Convert uppercase characters to lowercase ones and return the string in the correct format
	name = ToLower(newname);
	return name;
}
toLower(stringy)
{
	newstr = "";
	alphabet = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
	for(char = 0; char < stringy.size; char++)
	{
		added_character = false;
		for(i = 26; i < alphabet.size; i++)
		{
			if(alphabet[i] == stringy[char])
			{
				newstr += alphabet[i-26];
				added_character = true;
				break;
			}
		}
		if(!added_character)
			newstr += stringy[char];
	}
	return newstr;
}
strTok(longStr, separator)
{

	sepcount = 0; //Seperation Counts    -1 default
	string = [];
	longStr += ""; // turn it into a string if it isn't  already	
	for(i = 0; i < longStr.size; i++)
	{
		if(longStr[i] == separator)
			sepcount++;
		else
		{
			if(!isDefined(string[sepcount]))
				string[sepcount] = "";
				
			string[sepcount] += longStr[i];
		}
	}
	return string;
}
isSubStr(string, littlestring)
{
	if(littlestring.size > string.size)
		return false;

	for(i = 0; i < string.size - littlestring.size; i++)
	{
		if(getSubStr(string, i, littlestring.size) == littlestring)
			return true;
	}
	return false;
}
getSubStr(string, start, count)
{
	if(start + count > string.size)
	{
		iprintlnbold("getSubStr error");
		return "";
	}
	temp = "";
	for(i = start; i < start + count; i++)
		temp += string[i];
		
	return temp;
}


Create a new paste based on this one


Comments: