void Player::keyPressEvent(QKeyEvent *event) { if(event->key() == Qt::Key_Left){ setPixmap(QPixmap(":/Bow_Player_images/Player_weapon_2.png")); if(pos().x() >-240){ move(-10,0); } } else if(event->key() == Qt::Key_Right){ setPixmap(QPixmap(":/Bow_Player_images/Player_Bow_Right.png")); if(pos().x() <240){ move(10,0); } } else if(event->key() == Qt::Key_Up){ setPixmap(QPixmap(":/Bow_Player_images/Player_Bow_UP.png")); if(pos().y() >0){ move(0,-10); } } else if(event->key() == Qt::Key_Down){ setPixmap(QPixmap(":/Bow_Player_images/Player_Bow_Down.png")); if(pos().y() <440){ move(0,10); } } else if(event->key() == Qt::Key_1) { setPixmap(QPixmap(":/Bow_Player_images/Player_weapon_1.png"));//sets player to sword + shield setPlayerType(1); } else if(event->key() == Qt::Key_2) { setPixmap(QPixmap(":/Bow_Player_images/Player_weapon_2.png"));//sets player to bow and arrow setPlayerType(2); } else if(event->key()== Qt::Key_Space){ arrow = new Arrow; arrow->setPos(x(),y()); scene()->addItem(arrow); qDebug()<<"Shots fired"; } }
Player::Player(): QGraphicsPixmapItem() { setPlayerType(0);//sets player to sword+shield setPixmap(QPixmap(":/Bow_Player_images/Player_weapon_2.png")); setFlag(QGraphicsItem::ItemIsFocusable); setFocus(); setPos(x(),y()+240);//starts player in the centre of the room }
void Unit::iniciarUnidad(PlayerType tj, PlayerColor cr, PlayerTeam eq, int maxVitalidad, int vitalidad, int maxEnergy, int energy){ const int barWidth = 20; // QPainterPath path; //// path.lineTo(10,0); // path.addEllipse(QRectF(-10, -10, 20, 20)); // setShape(path); // includeBars = false; checkCounter = 0; setBorderWidth(2); setPlayerType(tj); setUnitColor(cr); setEquipo(eq); QRectF rectMA = MovilAgent::boundingRect(); prepareGeometryChange(); setMaxHealth(maxVitalidad); setHealth(vitalidad); setHealthBarPos(rectMA.topLeft() + QPointF(rectMA.width()/2 - barWidth/2, - 20)); setHealthBarWidth(barWidth); setHealthBarHeight(4); setVisibleHealthBar(true); setMaxEnergy(maxEnergy); setEnergy(energy); setEnergyBarPos(rectMA.topLeft() + QPointF(rectMA.width()/2 - barWidth/2, - 10)); setEnergyBarWidth(barWidth); setEnergyBarHeitght(4); setVisibleEnergyBar(true); setAcceptHoverEvents(true); PlayerColor pc; for(int i = 0; i < 8; i++){ pc = (PlayerColor)i; if(pc == getUnitColor()){ diplomacias[pc] = Alied; }else{ diplomacias[pc] = Enemy; } } MovingActuator *actMov = dynamic_cast<MovingActuator*>(getActuator("movement")); connect(actMov, SIGNAL(positionChanged(QPointF)), SLOT(checkAll(QPointF))); // connect(actMov, SIGNAL(llegoADestinoFinal(QPointF)), SLOT(lastCheckPointReached(QPointF))); }
virtual void drawImGui(void* opt = nullptr) override { ImGui::PushStyleColor(ImGuiCol_FrameBg, ImVec4(0.85, 0.85, 0.85, 1.0)); ImGui::PushItemWidth(180); static const char* items1[9] = { "Player 1", "Player 2", "Player 3", "Player 4", "Player 5", "Player 6", "Player 7", "Player 8", "Current Player" }; if ( ImGui::Combo("", &_currPlayer, items1, 9, 9) ) { setPlayerType(static_cast<PlayerType>(_currPlayer + 1)); } ImGui::PopItemWidth(); ImGui::PopStyleColor(); }
RemoteControl::RemoteControl(int id) : PlayerControl(id) { _lastData = new NetworkData(); setPlayerType(kHumanRemote); }