Перейти к публикации

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


Electr0

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

Т.к 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 пользователей

    • Нет пользователей, просматривающих эту страницу.
×
×
  • Создать...