99爱在线视频这里只有精品_窝窝午夜看片成人精品_日韩精品久久久毛片一区二区_亚洲一区二区久久

合肥生活安徽新聞合肥交通合肥房產生活服務合肥教育合肥招聘合肥旅游文化藝術合肥美食合肥地圖合肥社保合肥醫院企業服務合肥法律

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

時間:2025-04-26  來源:合肥網hfw.cc  作者:hfw.cc 我要糾錯



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

掃一掃在手機打開當前頁
  • 上一篇:CHC5049代做、代寫SQL編程設計
  • 下一篇:STAT4602代寫、代做Java/Python編程
  • 無相關信息
    合肥生活資訊

    合肥圖文信息
    2025年10月份更新拼多多改銷助手小象助手多多出評軟件
    2025年10月份更新拼多多改銷助手小象助手多
    有限元分析 CAE仿真分析服務-企業/產品研發/客戶要求/設計優化
    有限元分析 CAE仿真分析服務-企業/產品研發
    急尋熱仿真分析?代做熱仿真服務+熱設計優化
    急尋熱仿真分析?代做熱仿真服務+熱設計優化
    出評 開團工具
    出評 開團工具
    挖掘機濾芯提升發動機性能
    挖掘機濾芯提升發動機性能
    海信羅馬假日洗衣機亮相AWE  復古美學與現代科技完美結合
    海信羅馬假日洗衣機亮相AWE 復古美學與現代
    合肥機場巴士4號線
    合肥機場巴士4號線
    合肥機場巴士3號線
    合肥機場巴士3號線
  • 短信驗證碼 trae 豆包網頁版入口 目錄網 排行網

    關于我們 | 打賞支持 | 廣告服務 | 聯系我們 | 網站地圖 | 免責聲明 | 幫助中心 | 友情鏈接 |

    Copyright © 2025 hfw.cc Inc. All Rights Reserved. 合肥網 版權所有
    ICP備06013414號-3 公安備 42010502001045

    99爱在线视频这里只有精品_窝窝午夜看片成人精品_日韩精品久久久毛片一区二区_亚洲一区二区久久

          9000px;">

                中文字幕欧美激情一区| 亚洲国产日韩a在线播放性色| 欧美一级二级三级蜜桃| 欧美在线你懂的| 亚洲欧洲一区二区在线播放| 国产在线播放一区三区四| 精品国产乱码久久久久久牛牛 | 青草av.久久免费一区| 91热门视频在线观看| 亚洲综合男人的天堂| 国产亚洲一区二区在线观看| 欧美性大战久久久| 91视频在线观看免费| 亚洲午夜久久久久久久久电影网 | 成人性生交大片免费看在线播放| 国产精品一区在线观看你懂的| 99re这里只有精品6| 国产剧情一区在线| 国产精品国产成人国产三级| 色婷婷久久久亚洲一区二区三区| 久久网站最新地址| 5566中文字幕一区二区电影| 国产乱人伦精品一区二区在线观看| 蜜臀精品久久久久久蜜臀| 激情欧美一区二区| 国产精品福利一区| 欧美一区二区在线免费观看| 一级日本不卡的影视| 91精品国产综合久久小美女| 成人丝袜18视频在线观看| 7777精品伊人久久久大香线蕉的| 最新热久久免费视频| 韩国v欧美v亚洲v日本v| 最新中文字幕一区二区三区| 国产精品久久久一本精品| 中文字幕制服丝袜成人av| 亚洲一区中文日韩| 依依成人综合视频| 国产一区91精品张津瑜| 岛国一区二区三区| 日韩精品一区二区在线| 亚洲成av人影院| 在线精品国精品国产尤物884a| 日本一区二区动态图| 久久se精品一区二区| 日韩午夜av一区| 免费成人av在线播放| 日韩一区二区三区观看| 久久99久久久久久久久久久| 日韩欧美第一区| 日本亚洲免费观看| 91精品欧美久久久久久动漫| 亚洲免费大片在线观看| 91黄色小视频| 日产精品久久久久久久性色| 欧美一区二区啪啪| 国产揄拍国内精品对白| 久久久99免费| 色呦呦日韩精品| 亚洲国产综合在线| 一本大道av一区二区在线播放| 亚洲人成7777| 一本久久精品一区二区| 亚洲黄色录像片| 国产欧美日韩在线观看| 国产老妇另类xxxxx| 亚洲欧美日韩成人高清在线一区| 欧美日韩午夜在线| 99久久精品国产导航| 欧美aaaaaa午夜精品| 亚洲福利国产精品| 日韩伦理av电影| 精品三级av在线| 日韩欧美在线网站| 欧美吞精做爰啪啪高潮| 成人国产在线观看| 国产91在线看| 国产精品99精品久久免费| 男男视频亚洲欧美| 琪琪久久久久日韩精品| 日本欧美一区二区三区| 日韩高清在线不卡| 久久精品国产久精国产爱| 天天影视网天天综合色在线播放| 亚洲欧美日韩一区二区三区在线观看| 久久久久久久久久久电影| 欧美精品日韩一区| 久久综合久久综合久久| 国产精品乱码人人做人人爱| 国产精品色婷婷| 亚洲欧洲日本在线| 亚洲成人精品一区二区| 久久精品99国产精品| 激情另类小说区图片区视频区| 精品综合免费视频观看| 国产91丝袜在线播放九色| 色域天天综合网| 亚洲欧美电影一区二区| 日韩免费看的电影| 在线观看欧美精品| 国产成人99久久亚洲综合精品| 国产精品不卡视频| 久久青草国产手机看片福利盒子| 国产精品五月天| 欧美色精品在线视频| 国产成人免费视频| 麻豆91在线看| 奇米精品一区二区三区四区| 日韩毛片精品高清免费| 中文字幕第一页久久| 欧美zozozo| 欧美一级欧美三级| 91精品国产欧美一区二区18| 成人av综合一区| 日韩av电影免费观看高清完整版在线观看| 亚洲国产视频在线| 国产suv一区二区三区88区| 91免费国产在线| 国产精品久久久久久福利一牛影视 | 成人午夜激情在线| 久久精品一区二区三区不卡 | 欧美日韩免费一区二区三区 | 狠狠狠色丁香婷婷综合激情| 亚洲一本大道在线| 亚洲国产色一区| 日本特黄久久久高潮| 久久精品999| 激情综合色播激情啊| 国产精品一线二线三线精华| 成人一区二区视频| 欧美日韩国产乱码电影| 精品久久久久久最新网址| 国产香蕉久久精品综合网| 综合精品久久久| 精品亚洲国产成人av制服丝袜| 国产高清亚洲一区| 欧美一区三区四区| 一区二区三区国产豹纹内裤在线| 日韩精品一级二级| 成人免费观看视频| 久久综合国产精品| 天堂va蜜桃一区二区三区漫画版| 国产精品一区二区三区网站| 欧美视频三区在线播放| 久久精品欧美一区二区三区不卡 | 欧美日韩国产高清一区二区三区 | 亚洲色图在线播放| 成人高清免费观看| 精品国产一区二区在线观看| 亚洲一区在线观看免费 | 欧美日韩免费高清一区色橹橹| 在线观看亚洲一区| 久久综合成人精品亚洲另类欧美| 亚洲一级片在线观看| 在线免费精品视频| 亚洲欧美日韩国产手机在线 | 三级不卡在线观看| 欧美视频在线播放| 日韩中文字幕区一区有砖一区| 欧美视频在线一区二区三区| 一区二区三区四区在线免费观看| 成人sese在线| 亚洲精品免费在线观看| 欧美浪妇xxxx高跟鞋交| 九色综合国产一区二区三区| 精品嫩草影院久久| 高清不卡一二三区| 亚洲欧美国产77777| 制服丝袜一区二区三区| 日一区二区三区| 久久夜色精品一区| 中文字幕高清不卡| 亚洲成人在线网站| 精品一区二区三区久久久| 成人三级在线视频| 欧美精品乱人伦久久久久久| 久久亚洲一区二区三区明星换脸 | 激情文学综合丁香| 99热这里都是精品| 日韩美女视频一区二区在线观看| 国产欧美日韩精品一区| 亚洲免费观看高清在线观看| 日韩中文字幕一区二区三区| 国产乱国产乱300精品| 欧美亚洲国产一区在线观看网站| 91精品国产综合久久香蕉的特点 | 丝袜亚洲精品中文字幕一区| 国产一区日韩二区欧美三区| 91福利国产精品| 综合av第一页| 亚洲日本青草视频在线怡红院| 91丨porny丨蝌蚪视频| caoporm超碰国产精品| 99久久综合色| 97se亚洲国产综合自在线观| av一二三不卡影片| 91麻豆免费观看| 91麻豆精品国产91久久久资源速度 | 在线电影一区二区三区| 亚洲综合视频在线观看|