Example #1
0
nsresult GenerateRandomPathName(nsCString& aOutSalt, uint32_t aLength) {
  nsresult rv = GenerateRandomName(aOutSalt, aLength);
  if (NS_FAILED(rv)) return rv;

  // Base64 characters are alphanumeric (a-zA-Z0-9) and '+' and '/', so we need
  // to replace illegal characters -- notably '/'
  aOutSalt.ReplaceChar(FILE_PATH_SEPARATOR FILE_ILLEGAL_CHARACTERS, '_');
  return NS_OK;
}
Example #2
0
//-------------------------------------------------------------------
// TempFileName::TempFileName(path)
//-------------------------------------------------------------------
TempFileName::TempFileName(const String &strPath)
{
  set(strPath, GenerateRandomName());
}
Example #3
0
void CGuild::CreateGuild(IGamePlay *pGame)
{
	pGame->SetStopTime(75000);
	RunToVisitorRoom(pGame);
	if (pGame->IsTimerOut())
	{
		pGame->RefreshGameServer();
		return;
	}
	bool startHold = false;
	while (pGame->GetCoinage() < 1000)//10 silver
	{
		pGame->TradeAcceptGold(1000);
		WoWGUID holder = pGame->FindPlayer(m_goldHolder, _T(""));
		if (!startHold)
		{
			startHold = true;
			pGame->StartBot(m_goldHolder, _T(""));
		}
		while (holder.IsEmpty())
		{
			Sleep(500);
			holder = pGame->FindPlayer(m_goldHolder, _T(""));
			if (pGame->IsTimerOut())
			{
				pGame->RefreshGameServer();
				return;
			}
		}
		WoWPoint pos(-8889.239258, 605.871826, 95.257996);
		if (!pGame->WaitUnitToPosition(holder, pos, 120000, 5.f))
		{
			pGame->Log(2, _T("gold holder is not ready"));
			return;
		}
		pGame->SendInternalMessage(holder, _T("GuildCreateMoney"), NULL);
		//if (pGame->Trade())
		Sleep(500);
	}
	uint8 bag, slot;
	if (pGame->GetInventoryItem(_T("Guild Charter"), bag, slot).IsEmpty())
	{
		list<LPCTSTR> msgs;
		msgs.push_back(_T("How do I form a guild?"));
		if (!pGame->GossipNpc(0x00040000/*UNIT_NPC_FLAG_PETITIONER*/, msgs, false))
		{
			pGame->Log(2, _T("gossip to npc failed"));
			return;
		}
		CHAR guildName[64] = { 0 };
		int len = GenerateRandomName(guildName);
		if (len == 0)
		{
			pGame->Log(2, _T("Guild creation:generating random name failed"));
			return;
		}
		pGame->BuyPetition(guildName);
	}
	WoWGUID signatures[4];
	int count = 0;
	while ((count = pGame->GetPetitionSignatures(signatures, 4)) < 4)
	{
		MemberInfo players[5];
		int c = pGame->GetGuildRequestList(players, 5);
		int i = 0;
		for (; i < c; i++)
		{
			int j = 0;
			for (; j < count; j++)
			{
				if (players[i].guid == signatures[j])
					break;
			}
			if (j == count)
				pGame->OfferPetition(players[i].guid);
		}
		Sleep(100);
	}
	if (pGame->TurnInPetition())
	{
		pGame->SetGuildRankPermission(4, "Initiate", 0x080043, 0x43, 100000);//max
		pGame->SetGuildRankPermission(3, "Member", 0x080043, 0x43, 100000);//max
	}
	pGame->GuildCreateFinish();
}