Перейти к содержанию

Определение CommunityID (SteamID64)


Рекомендуемые сообщения

Опубликовано

Т.к SourcePawn не поддерживает 64 разрядные числа, то обошлись выводом через строку. Взято и доработано  http://forums.alliedmods.net/showthread.php?s=8bd8adb190d7cd9f933021b8919dfcb6&t=183443 '>отсюда

 

Source / Код:

stock GetCommunityID(const String:AuthID[], String:FriendID[], size)
{
        if(strlen(AuthID) < 11 || AuthID[0]!='S' || AuthID[6]=='I')
	{
		FriendID[0] = '\0';
		return -1;
	}
	
	if(strlen(AuthID) > 18) // отсекаем пиратов  у них нет странички в стиме :)
	{
		FriendID[0] = '\0';
		return -2;
	}

	new iUpper = 765611979;
	new iFriendID = StringToInt(AuthID[10])*2 + 60265728 + AuthID[8]-48;

	new iDiv = iFriendID/100000000;
	new iIdx = 9-(iDiv ? iDiv/10+1 : 0);  
	iUpper += iDiv;
	
	IntToString(iFriendID, FriendID[iIdx], size-iIdx);
	iIdx = FriendID[9];
	IntToString(iUpper, FriendID, size);
	FriendID[9] = iIdx;

	return 1;
}  

Данный сток нашел отличное применение на Mega Survival в панели информации об объекте где можно было перейти на профиль хозяина объекта если он лицензия :3.

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...