第八周專案四(1) 遊戲中角色類的增強版

2021-07-11 22:55:23 字數 2282 閱讀 7828

問題及**:

game.h

#ifndef game_h_included

#define game_h_included

#include using namespace std;

class point //point類宣告

;class weapon

;class role

;#endif // game_h_included

point.cpp

#include "game.h"

#include point::point(int x, int y): x(x), y(y)

int point::getx()

int point::gety()

//移到另外一點

void point::moveto(int x, int y)

//從當前位置移動

void point::move(int dx, int dy)

double point::distance(const point& p)

role.cpp

#include #include "game.h"

using namespace std;

role::role(string nam, int b, point l, weapon w):name(nam),blood(b),location(l),weapon(w)

role::~role()

//攻擊別人,自己漲血,同時對方被攻擊失血,血量取決於當前用的**

//在**的攻擊範圍內才可以攻擊

void role::attack(role &r) //攻擊別人,漲1血

}//被別人攻擊,引數f是承受的攻擊力

void role::beattack(int f)

//返回與另一角色的距離

double role::distance(role &r)

//是否活著

bool role::isalived()

//移到另外一點

void role::moveto(int x, int y)

//從當前位置移動

void role::move(int dx, int dy)

//顯示

void role::show()

weapon::weapon(const weapon &w):wname(w.wname),force(w.force),killrange(w.killrange) {}

string weapon::getwname()

//返回殺傷力

int weapon::getforce()

//返回殺傷距離

double weapon::getkillrange()

main.cpp

/*

*煙台大學計算機學院

*檔名稱:xiangmu2(1).cpp

*作 者:閆安

*完成日期:2023年5月5日

*版 本 號:codeblocks 16.01

**問題描述:改進:(1)**增加了殺傷距離,角色增加了位置,這樣,當兩個角色物件離得太遠,距離超出

攻擊者**的殺傷範圍,攻擊行為無效;(2)其他一些規則更加合理

*輸入描述:無

*程式輸出:任務的各種狀態

1.role裡的資料成員有point類的物件和weapon類的物件

2.若某類的「資料成員為別的類的物件」,其建構函式定義時建構函式的形參列表中必須包含別的類的建構函式

3.攻擊條件為:任務必須活著並且可攻擊距離大於當前兩個人物的距離。攻擊時,攻擊者血量增加量為攻擊力,別攻擊者血量減少量為攻擊力

第八周專案四 遊戲中的角色類

問題及 檔名稱 main.cpp 完成日期 2016年4月27日 問題描述 在上面已經建好的專案基礎上,將weapon類的資料成員改為陣列,以支援乙個角色可以帶多件 的需求,為此,在原類基礎上,改造及增加的資料成員和成員函式至少包括 類宣告 ifndef game h included define...

第八周專案(2) 遊戲中的角色類增強版

1 role類的資料成員中,有哪些成員上類的物件?loaction和weapon 2 觀察role類的建構函式,說出 若某類的 資料成員為別的類的物件 其建構函式定義時的要點有什麼?建構函式的形參列表中必須包含別的類中建構函式的形參 3 仔細研讀role attack成員函式,說出攻擊行為的條件,以...

第八周專案四

檔名稱 jcy 作 者 賈存鈺 完成日期 2017年10月24日 問題描述 建立稀疏矩陣三元組表示的演算法庫,包括 頭文tup.h,定義資料型別,宣告函式 原始檔tup.cpp,實現稀疏矩陣三元組表示的基本運算.cpp view plain copy ifndef tup h included de...