Bazaar developer reference

CvPreGame::setNickname(PlayerTypes, const CvString &)

Defined in
CvPreGame.cpp, line 2819
Hook name
CivHooks::CvPreGame_setNickname

Hooks

static bool BeforeCvPreGame_setNickname(PlayerTypes p, const CvString& n);static void AfterCvPreGame_setNickname(PlayerTypes p, const CvString& n);static void ReplaceCvPreGame_setNickname(void (*original)(PlayerTypes, const CvString&), PlayerTypes p, const CvString& n);CivRegisterBefore<CivHooks::CvPreGame_setNickname>(host, &BeforeCvPreGame_setNickname);CivRegisterAfter<CivHooks::CvPreGame_setNickname>(host, &AfterCvPreGame_setNickname);CivRegisterReplace<CivHooks::CvPreGame_setNickname>(host, &ReplaceCvPreGame_setNickname);

Code

2819void setNickname(PlayerTypes p, const CvString& n)2820{2821	if(p >= 0 && p < MAX_PLAYERS)2822	{2823		string _szName(n);2824		if(!n.IsEmpty())2825		{2826			size_t _pos = n.rfind('@');2827			size_t _cNum = n.length() - _pos;2828			// The max player name length is defined as 64 in ffirewiretypes, the max size of the string past that can only be 64 if we represent it as binary, currently representing it as HEX2829			if((_pos > 0 && _pos < 64) && _cNum < 32)2830			{2831				_szName.erase(_pos, _cNum);2832			}2833		}2834		s_displayNicknames[p] = (CvString)_szName;2835		s_nicknames.setAt(p, n);2836	}2837}

Calls

Called by