beenii
Well-Known Member
- Joined
- Jul 26, 2010
- Messages
- 580
- Solutions
- 1
- Reaction score
- 57
hi
my look is normal :
i try change for:
03:01 You see a moonlight rod.
[26] Dmg:[Min:20] [Max:30] [+130]
It can only be wielded properly by druids of level 12 or higher.
It weighs 21.00 oz.
First see Name and Description and before Other information.
any have ideas? thanks for read me
I could not figure out how this code works, to change the order. and I'm not 100% sure need to edit in this part.
i find in game.cpp this:
and
my look is normal :
i try change for:
03:01 You see a moonlight rod.
[26] Dmg:[Min:20] [Max:30] [+130]
It can only be wielded properly by druids of level 12 or higher.
It weighs 21.00 oz.
First see Name and Description and before Other information.
any have ideas? thanks for read me
I could not figure out how this code works, to change the order. and I'm not 100% sure need to edit in this part.
i find in game.cpp this:
Code:
bool Game::playerLookAt(uint32_t playerId, const Position& pos, uint16_t spriteId, int16_t stackpos)
{
Player* player = getPlayerByID(playerId);
if(!player || player->isRemoved())
return false;
Thing* thing = internalGetThing(player, pos, stackpos, spriteId, STACKPOS_LOOK);
if(!thing)
{
player->sendCancelMessage(RET_NOTPOSSIBLE);
return false;
}
Position thingPos = pos;
if(pos.x == 0xFFFF)
thingPos = thing->getPosition();
if(!player->canSee(thingPos))
{
player->sendCancelMessage(RET_NOTPOSSIBLE);
return false;
}
Position playerPos = player->getPosition();
int32_t lookDistance = -1;
if(thing != player)
{
lookDistance = std::max(std::abs(playerPos.x - thingPos.x), std::abs(playerPos.y - thingPos.y));
if(playerPos.z != thingPos.z)
lookDistance = lookDistance + 9 + 6;
}
bool deny = false;
CreatureEventList lookEvents = player->getCreatureEvents(CREATURE_EVENT_LOOK);
for(CreatureEventList::iterator it = lookEvents.begin(); it != lookEvents.end(); ++it)
{
if(!(*it)->executeLook(player, thing, thingPos, stackpos, lookDistance))
deny = true;
}
if(deny)
return false;
std::stringstream ss;
ss << "You see " << thing->getDescription(lookDistance);
if(player->hasCustomFlag(PlayerCustomFlag_CanSeeItemDetails))
{
if(Item* item = thing->getItem())
{
ss << std::endl << "ItemID: [" << item->getID() << "]";
if(item->getActionId() > 0)
ss << ", ActionID: [" << item->getActionId() << "]";
if(item->getUniqueId() > 0)
ss << ", UniqueID: [" << item->getUniqueId() << "]";
ss << ".";
const ItemType& it = Item::items[item->getID()];
if(it.transformEquipTo)
ss << std::endl << "TransformTo: [" << it.transformEquipTo << "] (onEquip).";
else if(it.transformDeEquipTo)
ss << std::endl << "TransformTo: [" << it.transformDeEquipTo << "] (onDeEquip).";
else if(it.decayTo != -1)
ss << std::endl << "DecayTo: [" << it.decayTo << "].";
}
}
if(player->hasCustomFlag(PlayerCustomFlag_CanSeeCreatureDetails))
{
if(const Creature* creature = thing->getCreature())
{
ss << std::endl << "Health: [" << creature->getHealth() << " / " << creature->getMaxHealth() << "]";
if(creature->getMaxMana() > 0)
ss << ", Mana: [" << creature->getMana() << " / " << creature->getMaxMana() << "]";
ss << ".";
if(const Player* destPlayer = creature->getPlayer())
{
ss << std::endl << "IP: " << convertIPAddress(destPlayer->getIP()) << ", Client: " << destPlayer->getClientVersion() << ".";
if(destPlayer->isGhost())
ss << std::endl << "* Ghost mode *";
}
}
}
if(player->hasCustomFlag(PlayerCustomFlag_CanSeePosition))
ss << std::endl << "Position: [X: " << thingPos.x << "] [Y: " << thingPos.y << "] [Z: " << thingPos.z << "].";
player->sendTextMessage(MSG_INFO_DESCR, ss.str());
return true;
}
and
Code:
bool Game::playerLookInTrade(uint32_t playerId, bool lookAtCounterOffer, int32_t index)
{
Player* player = getPlayerByID(playerId);
if(!player || player->isRemoved())
return false;
Player* tradePartner = player->tradePartner;
if(!tradePartner)
return false;
Item* tradeItem = NULL;
if(lookAtCounterOffer)
tradeItem = tradePartner->getTradeItem();
else
tradeItem = player->getTradeItem();
if(!tradeItem)
return false;
std::stringstream ss;
ss << "You see ";
int32_t lookDistance = std::max(std::abs(player->getPosition().x - tradeItem->getPosition().x),
std::abs(player->getPosition().y - tradeItem->getPosition().y));
if(!index)
{
ss << tradeItem->getDescription(lookDistance);
if(player->hasCustomFlag(PlayerCustomFlag_CanSeeItemDetails))
{
ss << std::endl << "ItemID: [" << tradeItem->getID() << "]";
if(tradeItem->getActionId() > 0)
ss << ", ActionID: [" << tradeItem->getActionId() << "]";
if(tradeItem->getUniqueId() > 0)
ss << ", UniqueID: [" << tradeItem->getUniqueId() << "]";
ss << ".";
const ItemType& it = Item::items[tradeItem->getID()];
if(it.transformEquipTo)
ss << std::endl << "TransformTo (onEquip): [" << it.transformEquipTo << "]";
else if(it.transformDeEquipTo)
ss << std::endl << "TransformTo (onDeEquip): [" << it.transformDeEquipTo << "]";
else if(it.decayTo != -1)
ss << std::endl << "DecayTo: [" << it.decayTo << "]";
}
player->sendTextMessage(MSG_INFO_DESCR, ss.str());
return false;
}
Container* tradeContainer = tradeItem->getContainer();
if(!tradeContainer || index > (int32_t)tradeContainer->getItemHoldingCount())
return false;
std::list<const Container*> listContainer;
listContainer.push_back(tradeContainer);
ItemList::const_iterator it;
Container* tmpContainer = NULL;
while(listContainer.size() > 0)
{
const Container* container = listContainer.front();
listContainer.pop_front();
for(it = container->getItems(); it != container->getEnd(); ++it)
{
if((tmpContainer = (*it)->getContainer()))
listContainer.push_back(tmpContainer);
--index;
if(index != 0)
continue;
ss << (*it)->getDescription(lookDistance);
if(player->hasCustomFlag(PlayerCustomFlag_CanSeeItemDetails))
{
ss << std::endl << "ItemID: [" << (*it)->getID() << "]";
if((*it)->getActionId() > 0)
ss << ", ActionID: [" << (*it)->getActionId() << "]";
if((*it)->getUniqueId() > 0)
ss << ", UniqueID: [" << (*it)->getUniqueId() << "]";
ss << ".";
const ItemType& iit = Item::items[(*it)->getID()];
if(iit.transformEquipTo)
ss << std::endl << "TransformTo: [" << iit.transformEquipTo << "] (onEquip).";
else if(iit.transformDeEquipTo)
ss << std::endl << "TransformTo: [" << iit.transformDeEquipTo << "] (onDeEquip).";
else if(iit.decayTo != -1)
ss << std::endl << "DecayTo: [" << iit.decayTo << "].";
}
player->sendTextMessage(MSG_INFO_DESCR, ss.str());
return true;
}
}
return false;
}