国产人妻人伦精品_欧美一区二区三区图_亚洲欧洲久久_日韩美女av在线免费观看

合肥生活安徽新聞合肥交通合肥房產(chǎn)生活服務(wù)合肥教育合肥招聘合肥旅游文化藝術(shù)合肥美食合肥地圖合肥社保合肥醫(yī)院企業(yè)服務(wù)合肥法律

代寫CS1010S、代做Python編程語言
代寫CS1010S、代做Python編程語言

時(shí)間:2025-04-26  來源:合肥網(wǎng)hfw.cc  作者:hfw.cc 我要糾錯(cuò)



CS1010S, Semester II, 2024/2025 — Mission 6 1
National University of Singapore
School of Computing
CS1010S: Programming Methodology
Semester II, 2024/2025
Mission 6
Role Playing Game (RPG)
Release date: 7th April 2025
Due: 21st April 2025, 23:59
Required Files
• mission06-template.py
• engine.py
Background
There are many different RPG nowadays like Final Fantasy (Figure. 1), World of Warcraft,
or Dota. In this mission, we will implement 5 character classes to run our very own
turn-based RPG!
Figure 1: Example of turn-based combat in Final Fantasy VII. Two teams of characters,
each with unique abilities and roles, take turns to attack each other.
CS1010S, Semester II, 2024/2025 — Mission 6 2
Information
This mission consists of 5 tasks.
The following consists of the ADTs that have been implemented for you within engine.py.
engine.py is the foundation for this mission, so be sure to examine the provided class
definitions in the file, which will guide you in building and expanding your own classes.
Villager ADT
A Villager represents a character with attributes such as health, mana, strength, and
intelligence. Villager serves as the base class for all classes that you will create.
Constructor
• Villager() -> villager
Mutators
• set_max_health(health) -> None
• set_max_mana(mana) -> None
• set_strength(strength) -> None
• set_intelligence(intelligence) -> None
• set_cost(cost) -> None
Accessors
• get_max_health() -> max_health
• get_health() -> health
• get_max_mana() -> max_mana
• get_mana() -> mana
• get_strength() -> strength
• get_intelligence() -> intelligence
• get_cost() -> cost
Operations
• is_alive() -> bool
• heal(amount) -> None
• use_mana(amount) -> None
• regen_mana(amount) -> None
• receive_damage(damage) -> None
• act(ally_team, enemy_team) -> None
CS1010S, Semester II, 2024/2025 — Mission 6 3
Team ADT
A Team represents a collection of villagers participating in the Trial of Ancients. It provides
utility methods to manage and interact with the villagers.
Constructor
• Team(name) -> team
Mutators
• add_villager(villager) -> None
Accessors
• get_name() -> name
• get_all_alive() -> list_of_villagers
• get_all_dead() -> list_of_villagers
• get_num_alive() -> int
• get_num_dead() -> int
• get_rand_alive() -> villager
• get_rand_dead() -> villager
Game ADT
The Game class is the core component for simulating combat between two teams in the
Trial of Ancients. It alternates turns between the two teams, allowing their champions
to take actions until one team is completely defeated.
Constructor
• Game(gold, avail_types, play, seed) -> game
Creates a new game with the specified gold, available character types, play mode
(decides whether to show each round or not), and seed for random generator.
Mutators
• simulate() -> None
Runs the simulation, alternating turns until one team wins.
CS1010S, Semester II, 2024/2025 — Mission 6 4
Task 1: Fighter (4 marks)
A Fighter is a Villager that is brave and skilled while specializing in physical combat.
Fighters possess high health and strength, allowing them to deal significant damage
to their enemies. They are resilient champions who use brute force to dominate the
battlefield. The Fighter’s actions focus on targeting and attacking a random opponent,
showcasing their prowess in direct combat.
1. Implement the class, Fighter.
The constructor does not take any parameters. The fighter has 1200 Health and
100 Strength while costing 100 Gold.
2. Implement the method, act(), which would be called when the fighter is chosen to
act during their team’s turn.
When the fighter acts, he chooses a random enemy that is alive to attack, dealing
damage equal to his strength.
Sample execution:
# Team A fighter acts on an opponent fighter
" Team A member Fighter acts ."
" Hurt enemy Fighter for 100 damage ."
" Fighter hurt with remaining hp 1100 ."
Task 2: Mage (4 marks)
A Mage is a Villager skilled in harnessing magical energy to strike their foes or replenish
their mana. Mages have lower health but possess high intelligence, allowing them to
deal significant damage. During their turn, a Mage will either attack a random enemy
using their intelligence stat, consuming mana in the process, or regenerate mana if their
reserves are low. This strategic flexibility makes them valuable in any team.
1. Implement the class Mage, inherited from the Villager class.
The constructor does not take any parameters. The mage has 800 Health,400
Intelligence, 50 max mana, while costing 200 Gold.
2. Implement the method act(), which would be called when the mage is chosen to
act during their team’s turn.
When the mage acts, he chooses a random enemy that is alive to attack, dealing
damage equal to their intelligence, while consuming 20 mana in the process. If
the mage’s mana is less than 20, the mage will instead go into meditation, which
regenerates 30 mana instead of attacking the enemy.
Sample execution:
# Team A mage acts on an opponent fighter
" Team A member Mage acts ."
" Hurt enemy Fighter for 400 damage ."
" Fighter hurt with remaining hp 800."
# Team A mage acts , but does not have enough mana
" Team A member Mage acts ." # Mage has 10 mana
" Recovered mana to 40."
CS1010S, Semester II, 2024/2025 — Mission 6 5
Task 3: Berserker (3 marks)
The Berserker class is a Fighter who becomes more dangerous as they take damage.
Berserkers thrive in high-pressure situations, delivering devastating blows when their
health is low.
1. Implement the class, Berserker, inherited from the Fighter class.
The constructor does not take any parameters. A berserker has the same base
stats as a fighter (1200 health, 100 strength) but costs 200 gold. However, They
deal double damage if their health is lower than half of their maximum health.
2. Implement the method, get_strength(), which returns double the strength if the
berserker’s health is less than or equal to half of its maximum health, and regular
strength otherwise.
Sample execution:
# Team A berserker with more than half health acts on an opponent fighter
" Team A member Berserker acts ."
" Hurt enemy Fighter for 100 damage ."
" Fighter hurt with remaining hp 1100 ."
# Team A berserker with less than half health acts on an opponent fighter
" Team A member Berserker acts ."
" Hurt enemy Fighter for 200 damage ."
" Fighter hurt with remaining hp 1000 ."
Task 4: Archmage (4 marks)
The Archmage class is a Mage capable of casting devastating area-of-effect spells. Arch mages are formidable champions who can turn the tide of battle in critical moments.
1. Implement the class, Archmage, inherited from the Mage class.
The constructor does not take any parameters. An archmage has the same base
stats as a mage (800 health, 400 intelligence, 50 mana) but costs 600 gold.
2. Implement the method, act(), which behaves differently depending on the situ ation:
• If the archmage is the last ally alive and has at least 20 mana, they cast KABOOM!,
dealing double their intelligence as damage to all enemies and consuming 20
mana.
• Otherwise, the archmage behaves like a regular mage, attacking a random
enemy or regenerating mana if their reserves are low.
Sample execution:
# Team A archmage acts , casting KABOOM ! on all opponents
" Team A member Archmage acts ."
" Only one standing . Cast KABOOM ! on every enemy alive !"
" Hurt enemy Fighter for 800 damage ."
" Hurt enemy Mage for 800 damage ."
CS1010S, Semester II, 2024/2025 — Mission 6 6
Task 5: Necromancer (4 marks)
The Necromancer class is a mage with the ability to revive fallen allies. Necromancers
bring a unique strategic advantage to their team by restoring defeated champions to
continue the fight.
1. Implement the class, Necromancer, inherited from the Mage class.
The constructor does not take any parameters. A necromancer has the same base
stats as a mage (800 health, 400 intelligence, 50 mana) but costs 400 gold.
2. Implement the method, act(), which behaves differently depending on the situ ation:
• If the necromancer has at least 20 mana and there are dead allies, they revive
a random ally with half of their maximum health rounded down to the nearest
one (e.g., 400/800 or 350/701), consuming 20 mana in the process.
• Otherwise, the necromancer behaves like a regular mage, attacking a random
enemy or regenerating mana if their reserves are low.
Sample execution:
# Team A necromancer acts , reviving an ally
" Team A member Necromancer acts ."
" Reviving Fighter with 600 hp."

請加QQ:99515681  郵箱:99515681@qq.com   WX:codinghelp

掃一掃在手機(jī)打開當(dāng)前頁
  • 上一篇:CHC5049代做、代寫SQL編程設(shè)計(jì)
  • 下一篇:STAT4602代寫、代做Java/Python編程
  • 無相關(guān)信息
    合肥生活資訊

    合肥圖文信息
    流體仿真外包多少錢_專業(yè)CFD分析代做_友商科技CAE仿真
    流體仿真外包多少錢_專業(yè)CFD分析代做_友商科
    CAE仿真分析代做公司 CFD流體仿真服務(wù) 管路流場仿真外包
    CAE仿真分析代做公司 CFD流體仿真服務(wù) 管路
    流體CFD仿真分析_代做咨詢服務(wù)_Fluent 仿真技術(shù)服務(wù)
    流體CFD仿真分析_代做咨詢服務(wù)_Fluent 仿真
    結(jié)構(gòu)仿真分析服務(wù)_CAE代做咨詢外包_剛強(qiáng)度疲勞振動(dòng)
    結(jié)構(gòu)仿真分析服務(wù)_CAE代做咨詢外包_剛強(qiáng)度疲
    流體cfd仿真分析服務(wù) 7類仿真分析代做服務(wù)40個(gè)行業(yè)
    流體cfd仿真分析服務(wù) 7類仿真分析代做服務(wù)4
    超全面的拼多多電商運(yùn)營技巧,多多開團(tuán)助手,多多出評軟件徽y1698861
    超全面的拼多多電商運(yùn)營技巧,多多開團(tuán)助手
    CAE有限元仿真分析團(tuán)隊(duì),2026仿真代做咨詢服務(wù)平臺
    CAE有限元仿真分析團(tuán)隊(duì),2026仿真代做咨詢服
    釘釘簽到打卡位置修改神器,2026怎么修改定位在范圍內(nèi)
    釘釘簽到打卡位置修改神器,2026怎么修改定
  • 短信驗(yàn)證碼 寵物飼養(yǎng) 十大衛(wèi)浴品牌排行 suno 豆包網(wǎng)頁版入口 wps 目錄網(wǎng) 排行網(wǎng)

    關(guān)于我們 | 打賞支持 | 廣告服務(wù) | 聯(lián)系我們 | 網(wǎng)站地圖 | 免責(zé)聲明 | 幫助中心 | 友情鏈接 |

    Copyright © 2025 hfw.cc Inc. All Rights Reserved. 合肥網(wǎng) 版權(quán)所有
    ICP備06013414號-3 公安備 42010502001045

    国产人妻人伦精品_欧美一区二区三区图_亚洲欧洲久久_日韩美女av在线免费观看
    亚洲自拍欧美色图| 久久精彩视频| 日本国产在线播放| 天天综合五月天| 欧美激情图片区| 欧美激情区在线播放| 久久99久国产精品黄毛片入口| 久久综合网hezyo| 国产精品成人品| 欧美精品在线网站| 久久久久久成人| 亚洲欧美久久久久一区二区三区| 亚洲精品中文字幕在线| 午夜精品在线观看| 欧美一级片久久久久久久| 日本午夜精品电影| 欧美精品久久久久久久自慰| 红桃一区二区三区| 国产免费一区二区三区视频| 国产乱子伦精品| 久久久免费视频网站| 久久久久久久久久国产| 国产精品久久婷婷六月丁香| 一区二区视频国产| 日韩av不卡电影| 精品日产一区2区三区黄免费 | 日本十八禁视频无遮挡| 青青草国产免费| 狠狠色综合色区| 啊啊啊一区二区| 日韩有码在线视频| 国产精品福利在线| 亚洲国产欧美一区二区三区不卡| 欧洲亚洲免费视频| 国产毛片久久久久久国产毛片| 久久久久久高清| 国产精品激情av电影在线观看| 亚洲一区二区三区毛片| 欧美又大又粗又长| www.av中文字幕| 国产精品视频入口| 午夜伦理精品一区| 蜜桃麻豆91| 国产成人在线一区| 欧美激情视频一区二区三区不卡| 日本va中文字幕| 国产女精品视频网站免费| 国产高清视频一区三区| 欧美精品日韩www.p站| 少妇免费毛片久久久久久久久| 国产精品成久久久久三级| 久久精品91久久久久久再现| 欧美wwwxxxx| 日韩免费av一区二区| 国产精品永久在线| 国产成人精品在线播放| 亚洲一区中文字幕在线观看| 欧美 日韩 国产 在线观看| 国产成人精品网站| 中文字幕综合在线观看| 欧美日韩精品免费观看视一区二区| 国产伦视频一区二区三区| 色妞久久福利网| 欧美激情一区二区三级高清视频 | 日韩中文字幕在线免费| 国产日产欧美精品| 国产精品日日做人人爱| 日本免费久久高清视频| 97精品国产97久久久久久免费| 欧美精品亚州精品| 欧美一级大片在线观看| 久久男人av资源网站| 亚洲中文字幕无码专区| 精品一区二区三区视频日产| 久久久久久欧美| 日韩a∨精品日韩在线观看| 国产精品夜色7777狼人| 九色91av视频| 国产午夜精品一区| 久久草.com| 日本精品视频一区| 久久av免费观看| 日本午夜在线亚洲.国产| 国产黄页在线观看| 天天爽天天狠久久久| 91极品视频在线| 一本二本三本亚洲码| 不卡视频一区二区三区| 欧美激情亚洲精品| 国产一区二区三区在线免费| 久久成人综合视频| 国产在线精品一区二区三区| 国产精品国模在线| 国产一区视频在线| 精品不卡在线| 国产午夜大地久久| 精品国产欧美成人夜夜嗨| 日韩不卡一二区| 久久久久久久久久久亚洲| 日韩久久久久久久久久久久 | 亚洲在线色站| 免费国产一区| 精品国产一二| 成人a级免费视频| 亚洲一区二区三区免费看| 国产精品50p| 日韩女优人人人人射在线视频| 久久精品99无色码中文字幕| 好吊色欧美一区二区三区四区| 久久国产精彩视频| 国产伦精品一区二区三区视频免费| 欧美激情视频网站| 91免费黄视频| 日本一区二区三区四区高清视频| 久久久噜噜噜久久中文字免| 欧美变态另类刺激| 国产精品入口尤物| 国产日韩精品一区二区| 亚洲一区制服诱惑| 久久资源av| 欧美亚洲另类制服自拍| 久久夜色撩人精品| 99中文字幕在线观看| 日韩亚洲在线视频| 国产精品裸体一区二区三区| 国产精品一区二区在线| 性色av一区二区咪爱| 国产成人啪精品视频免费网 | 国产一区二区自拍| 一区二区不卡在线视频 午夜欧美不卡' | 欧美在线3区| 国产精品对白一区二区三区| 91精品视频一区| 欧美在线视频网站| 欧美激情亚洲精品| 久久国产精品网| 国产一区高清视频| 欧美人与动牲交xxxxbbbb| 人体精品一二三区| 精品国产一区二区三区久久久| 日韩精品视频久久| 亚洲在线播放电影| 国产精品91久久久久久| 欧美日韩精品一区| 亚洲图片欧洲图片日韩av| 久久久久亚洲av无码专区喷水| 国产尤物91| 日韩资源av在线| 久久综合久中文字幕青草| 欧美日韩一区二区三区免费 | 亚洲巨乳在线观看| 波霸ol色综合久久| 国产v综合v亚洲欧美久久| 国产精品1区2区在线观看| 国产精品网站视频| 在线免费观看一区二区三区| 国产一区二区免费在线观看| 欧洲午夜精品久久久| 国内一区二区在线视频观看| 欧美精品国产精品久久久| 日日狠狠久久偷偷四色综合免费| 亚洲自拍av在线| 日本一本a高清免费不卡| 欧洲在线视频一区| 国产欧亚日韩视频| 欧美日本亚洲视频| 亚洲aaa激情| 日韩av综合在线观看| 国产一区二区三区av在线| 久久久久久网址| 国模私拍视频一区| 日韩色av导航| 午夜在线视频免费观看| 欧美国产综合在线| 色噜噜久久综合伊人一本| 日本高清+成人网在线观看| 国产麻豆日韩| 中文字幕欧美日韩一区二区 | 亚洲综合精品一区二区| 国模视频一区二区三区| 精品午夜一区二区三区| 国产乱码精品一区二区三区日韩精品 | 国产又黄又爽免费视频| 天天在线免费视频| 国产成人生活片| 久久久久久九九| 国产成人综合久久| 久久久人人爽| 久久视频在线观看中文字幕| 国产另类第一区| 国产片侵犯亲女视频播放| 国产综合视频在线观看| 麻豆中文字幕在线观看| 免费看欧美黑人毛片| 精品少妇人妻av一区二区| 国内精品久久国产| 精品无码一区二区三区爱欲| 国产人妖伪娘一区91| 成人免费在线网址| 国产日产欧美a一级在线|