void AttackLayer::menuCallback(Ref * sender) { auto menuItemImage = (MenuItemImage *)sender; auto i =menuItemImage->getTag(); if (i == 0) { auto sf = (SFRole *)SelectRole::getInstence()->getRoleArmatures().at(0); log("%d",sf->getMp()); if (sf->getMp() >= 99) { __NotificationCenter::getInstance()->postNotification("skill"); auto layer = (HpLoadingbar *)SelectRole::getInstence()->getHpLayer().at(0); layer->loadingBarMp->setPercent(1); sf->setMp(0); log("%d",sf->getMp()); } }else if (i == 1) { auto sf = (NECRole *)SelectRole::getInstence()->getRoleArmatures().at(1); if (sf->getMp() >= 99) { __NotificationCenter::getInstance()->postNotification("skill"); auto layer = (HpLoadingbar *)SelectRole::getInstence()->getHpLayer().at(1); layer->loadingBarMp->setPercent(1); } } }
const Matrix& PFEMElement2DBubble::getMass() { // resize K int ndf = this->getNumDOF(); K.resize(ndf, ndf); K.Zero(); double m = getM(); double mp = getMp(); // mass for(int a=0; a<3; a++) { K(numDOFs(2*a), numDOFs(2*a)) = m; // Mxd K(numDOFs(2*a)+1, numDOFs(2*a)+1) = m; // Myd for(int b=0; b<3; b++) { if(a == b) { K(numDOFs(2*a+1), numDOFs(2*b+1)) = 2*mp; // Mp } else { K(numDOFs(2*a+1), numDOFs(2*b+1)) = mp; // Mp } } } //opserr<<"M = "<<K; return K; }
//----------------------------------------------------------------------------- void CCharacter::setHpMpSp( Flt num, DamageType type, ATTACK_RESULT_TYPE resType ) { //死亡 if ( ATTACK_RESULT_TYPE_DEAD == resType ) { setHp(0); } //恢复 if ( ATTACK_RESULT_TYPE_RECOVER == resType ) { if ( type & DT_HP ) { setHp(getHp()+num); } if ( type & DT_MP ) { //mCAttributeSystem.addValue(ATTR_ID_Mp, num); setMp(getMp()+num); } if ( type & DT_SP ) { //mCAttributeSystem.addValue(ATTR_ID_Sp, num); setSp(getSp()+num); } } //伤害 if ( ATTACK_RESULT_TYPE_HURT == resType ) { if ( type & DT_HP ) { //mCAttributeSystem.addValue(ATTR_ID_Hp, -num); setHp(getHp()-num); } if ( type & DT_MP ) { //mCAttributeSystem.addValue(ATTR_ID_Mp, -num); setMp(getMp()-num); } if ( type & DT_SP ) { //mCAttributeSystem.addValue(ATTR_ID_Sp, -num); setSp(getSp()-num); } } }
bool Enemy::willRestoreMP() { if (!m_inventory.consumables().empty() && getMp() <= (RESTORE_MP_THRESHOLD * getMaxMp())) { size_t len = m_inventory.consumables().size(); for (size_t i = 0; i < len; ++i) { if (m_inventory.consumables()[i] -> getType() == CONSUMABLE_TYPE::MP) return true; } } return false; }
void MonsterProperties::setWidgetValue() { InternalOperation = true; if (targetSprite->isHasMonsterProperties()){ auto sprite = dynamic_cast<EntityImageSprite*>(targetSprite); this->setVisible(true); hp->setText(QString::number(sprite->getHp())); mp->setText(QString::number(sprite->getMp())); attack->setText(QString::number(sprite->getAttack())); defense->setText(QString::number(sprite->getDefense())); magic_attack->setText(QString::number(sprite->getMagicAttack())); magic_defense->setText(QString::number(sprite->getMagicDefense())); speed->setText(QString::number(sprite->getSpeed())); hardFactor->setText(QString::number(sprite->getHardFactor())); } else{ this->setVisible(false); setDefaultValue(); } InternalOperation = false; }