void CombatWindow::addCombatRecord(int iTargetID, int iSourceID, int iType, int iSpell, int iDamage) { #ifdef DEBUGCOMBAT printf("CombatWindow::addCombatRecord starting...\n"); printf("target=%d, source=%d, type=%d, spell=%d, damage=%d\n", iTargetID, iSourceID, iType, iSpell, iDamage); #endif int iPlayerID = m_player->id(); // The one case we won't handle (for now) is where the Target // and Source are the same. if(iTargetID == iPlayerID && iSourceID != iPlayerID) { addDefenseRecord(iDamage); updateDefense(); addMobRecord(iTargetID, iSourceID, iDamage); updateMob(); } else if(iSourceID == iPlayerID && iTargetID != iPlayerID) { addOffenseRecord(iType, iDamage); updateOffense(); addMobRecord(iTargetID, iSourceID, iDamage); updateMob(); if(iDamage > 0) updateDPS(iDamage); } #ifdef DEBUGCOMBAT printf("CombatWindow::addCombatRecord finished...\n"); #endif }
void AvatarEntity::update(const float elapsedTime) { //Para actualizar el estado del avatar, miraremos primero en que estado estamos //Y despues llamamos a las funciones que actualizan segun el estado updateState(); switch(m_state) { case IDLE: updateIdle(elapsedTime); break; case PUNCH: updatePunch(elapsedTime); break; case JAB: updateJab(elapsedTime); break; case KICK: updateKick(elapsedTime); break; case LOWER: updateLower(elapsedTime); break; case MOVE: updateMove(elapsedTime); break; case JUMP: updateJump(elapsedTime); break; case DEFENSE: updateDefense(elapsedTime); break; } }
void CombatWindow::initUI() { #ifdef DEBUGCOMBAT printf("CombatWindow::initUI: starting...\n"); #endif QVBoxLayout* layout = new QVBoxLayout(this); layout->setAutoAdd(true); m_tab = new QTabWidget(this); m_widget_offense = initOffenseWidget(); m_tab->addTab(m_widget_offense, "&Offense"); m_widget_defense = initDefenseWidget(); m_tab->addTab(m_widget_defense, "&Defense"); m_widget_mob = initMobWidget(); m_tab->addTab(m_widget_mob, "&Mobs"); updateOffense(); updateDefense(); updateMob(); #ifdef DEBUGCOMBAT printf("CombatWindow::initUI: finished...\n"); #endif }
void Stats::updateFinalStats() { updateHealth(); updateMana(); updateAttack(); updateMagicAttack(); updateDefense(); updateMagicDefense(); updateDodge(); updateHit(); }
void CombatWindow::clear() { m_combat_mob_list.clear(); updateMob(); m_combat_offense_list.clear(); updateOffense(); m_combat_defense_record->clear(); updateDefense(); resetDPS(); }
void CombatWindow::initUI() { #ifdef DEBUGCOMBAT seqDebug("CombatWindow::initUI: starting..."); #endif m_tab = new QTabWidget(); m_offenseTab = initOffenseWidget(); m_tab->addTab(m_offenseTab, "&Offense"); m_defenseTab = initDefenseWidget(); m_tab->addTab(m_defenseTab, "&Defense"); m_mobTab = initMobWidget(); m_tab->addTab(m_mobTab, "&Mobs"); //m_menuBar = new QMenuBar(this); //m_clearMenu = new Q3PopupMenu(this); //m_clearMenu->insertItem("Clear Offense Stats", this, SLOT(clearOffense())); //m_clearMenu->insertItem("Clear Mob Stats", this, SLOT(clearMob())); //m_menuBar->insertItem("&Clear", m_clearMenu); //QPushButton* m_clearButton = new QPushButton("Clear"); //connect(m_clearButton, SIGNAL(clicked()), this, SLOT(clearOffense())); //connect(m_clearButton, SIGNAL(clicked()), this, SLOT(clearMob())); //QVBoxLayout* mainLayout = new QVBoxLayout(); //mainLayout->addWidget(m_tab); //mainLayout->addWidget(m_clearButton); updateOffense(); updateDefense(); updateMob(); //QWidget* layoutWidget = new QWidget(); //layoutWidget->setLayout(mainLayout); //setWidget(layoutWidget); setWidget(m_tab); #ifdef DEBUGCOMBAT seqDebug("CombatWindow::initUI: finished..."); #endif }
void CombatWindow::addCombatRecord(int iTargetID, int iSourceID, int iType, int iSpell, int iDamage, QString tName, QString sName) { #ifdef DEBUGCOMBAT seqDebug("CombatWindow::addCombatRecord starting..."); seqDebug("target=%d, source=%d, type=%d, spell=%d, damage=%d", iTargetID, iSourceID, iType, iSpell, iDamage); #endif int iPlayerID = m_player->id(); // The one case we won't handle (for now) is where the Target // and Source are the same. if(iTargetID == iPlayerID && iSourceID != iPlayerID) { addDefenseRecord(iDamage); updateDefense(); addMobRecord(iTargetID, iSourceID, iDamage, tName, sName); updateMob(); } else if(iSourceID == iPlayerID && iTargetID != iPlayerID) { addOffenseRecord(iType, iDamage, iSpell); updateOffense(); // Belith -- Lets not add buffs, etc if ((iType == 231 && iDamage > 0) || iType != 231) { addMobRecord(iTargetID, iSourceID, iDamage, tName, sName); updateMob(); } if(iDamage > 0) updateDPS(iDamage); } #ifdef DEBUGCOMBAT seqDebug("CombatWindow::addCombatRecord finished..."); #endif }
void CombatWindow::initUI() { #ifdef DEBUGCOMBAT seqDebug("CombatWindow::initUI: starting..."); #endif QVBoxLayout* layout = new QVBoxLayout(boxLayout()); m_menu_bar = new QMenuBar(this); layout->addWidget(m_menu_bar); m_tab = new QTabWidget(this); layout->addWidget(m_tab); m_widget_offense = initOffenseWidget(); m_tab->addTab(m_widget_offense, "&Offense"); m_widget_defense = initDefenseWidget(); m_tab->addTab(m_widget_defense, "&Defense"); m_widget_mob = initMobWidget(); m_tab->addTab(m_widget_mob, "&Mobs"); m_clear_menu = new QPopupMenu(this); m_clear_menu->insertItem("Clear Offense Stats", this, SLOT(clearOffense())); m_clear_menu->insertItem("Clear Mob Stats", this, SLOT(clearMob())); m_menu_bar->insertItem("&Clear", m_clear_menu); updateOffense(); updateDefense(); updateMob(); #ifdef DEBUGCOMBAT seqDebug("CombatWindow::initUI: finished..."); #endif }