FL

Problema com drop de Key com Action ID

Por FlamesAdmin, 17 de abr. de 2020 em Programação

tfs036
16
3.1k
24 de abril de 2020 às 09:49
9 horas atrás, Yan18 disse:

Teria que olhar todo o código para ver.

Eu até tenho uma 0.4 aqui com isso corrigido, mas não consegui extrair os códigos com a correção

 

if(lootBlock.actionId != -1)
		tmpItem->setActionId(lootBlock.actionId);

Desse jeito /\ o servidor crasha quando dropa

 

Minhas sources:

Item* MonsterType::createLoot(const LootBlock& lootBlock)
{
	uint16_t item = lootBlock.ids[0], random = Monsters::getLootRandom();
	if(lootBlock.ids.size() > 1)
		item = lootBlock.ids[random_range((size_t)0, lootBlock.ids.size() - 1)];

	Item* tmpItem = NULL;
	if(Item::items[item].stackable)
	{
		if(random < lootBlock.chance)
			tmpItem = Item::CreateItem(item, (random % lootBlock.count + 1));
	}
	else if(random < lootBlock.chance)
		tmpItem = Item::CreateItem(item, 0);

	if(!tmpItem)
		return NULL;

	if(lootBlock.subType != -1)
		tmpItem->setSubType(lootBlock.subType);

	if(lootBlock.actionId != -1)
		tmpItem->setAttribute("aid", lootBlock.actionId);

	if(lootBlock.uniqueId != -1)
		tmpItem->setUniqueId(lootBlock.uniqueId);

	if(!lootBlock.text.empty())
		tmpItem->setText(lootBlock.text);

	return tmpItem;
}

 

Editado Abril 24 por FlamesAdmin