Форум программистов, компьютерный форум, киберфорум
Ruby
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 01.04.2015
Сообщений: 15
1

Обычная консольная RPG (ООП)

06.05.2015, 02:32. Показов 1082. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день! Требуется написать консольную RPG. Код есть(самый банальный вариант), работает:
Ruby
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
def start
    @hero_hp = 100
    @enemy_hp = 100
 
    puts "> Ready? YES | NO"
    game = $stdin.gets.chomp.upcase
    if game == "YES"
        attack_enemy
    else
        puts "\n> Game Over"
    end
end
 
def attack_enemy
    hero_damage = rand(51) + 50
    puts "\n> Hero's damage = #{hero_damage}"
    
    @enemy_hp -= hero_damage
 
    if @enemy_hp <= 0
        puts "\n> You win!"
        victory
    else
        puts "\n> Enemy's hp = #{@enemy_hp}"
        attack_hero
    end
end
 
def attack_hero
    #Герой умрет, если не будет атаковать противника
    enemy_damage = rand(20)
    puts "\n> Enemy's damege = #{enemy_damage}"
 
    @hero_hp -= enemy_damage
    puts "\n> Hero's hp = #{@hero_hp}"
 
    if @hero_hp <= 0
        death
    else
        puts "\n> Continue attacking? YES | NO"
        choise = $stdin.gets.chomp.upcase
        if choise == "YES"
            attack_enemy
        else
            death
        end
    end
end
 
def victory
    puts "\n> Congratulations!!!"
end
 
def death
    puts "\n> Game over. Play again? YES | NO"
    choise = $stdin.gets.chomp.upcase
    if choise == "YES"
        start
    else
        puts "\n> ;("
    end
end
 
start
Но проблема в том, что нужно реализовать тип Unit, наследовать типы Enemy, Hero, затем у Enemy наследовать различные типы монстров. Другими словами, не получается реализовать с помощью наследования, не совсем понятно(нет опыта)
Прошу помочь с реализацией.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.05.2015, 02:32
Ответы с готовыми решениями:

Консольная RPG
Собственно, привет всем кто это читает, у меня возникла проблема, хочу создать противников и...

Одиночные RPG
Привет всем. Решила в свободное от работы время вспомнить молодость:hihi: Посоветуйте какие-нибудь...

Создание 2d rpg
Хочу создать рпг типа Дьябло. Как думаете, возможно-ли с знанием C++, написать свой движок для игр...

RPG с видом сверху
Привет=) Посоветуйте игры жанра РПГ 2012/2011 года, с видом сверху (например Dragon Age, Diablo)...

3
870 / 720 / 304
Регистрация: 15.04.2013
Сообщений: 2,047
Записей в блоге: 5
07.05.2015, 13:19 2
Dummy_Rus,
Ruby
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
class Unit
  def initialize(hp)
    @hp = hp
  end
 
  def add_hp hp
    @hp += hp
  end
 
  def sub_hp hp
    @hp -= hp
  end
 
  def print
    p @hp
  end
end
 
class Hero < Unit
end
 
class Enemy < Unit
end
 
class Beast < Enemy
end
 
class Berserk < Enemy
end
Или как вариант для героя использовать eigen класс
0
0 / 0 / 0
Регистрация: 01.04.2015
Сообщений: 15
07.05.2015, 19:03  [ТС] 3
XRoy, честно говоря, не могу разобраться в логике кода(с какой целью конструктор, sub и add...). Хотя, скорее всего, с моей стороны некорректно было передано условие... На самом деле оно большое, с несколькими этапами, но вот фундамент с предыдущими требованиями: в Unit, содержащем hp, attack, defence, level, weapon etc., определить атрибуты атаки, жизни, метод fight(enemy) и т.п.
0
870 / 720 / 304
Регистрация: 15.04.2013
Сообщений: 2,047
Записей в блоге: 5
07.05.2015, 19:52 4
Dummy_Rus,
Делайте все постепенно, определите класс unit, реализуйте все что в нем требуется, потом переходите уже к его наследникам
0
07.05.2015, 19:52
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.05.2015, 19:52
Помогаю со студенческими работами здесь

Создание простой RPG
Здравствуйте. В С++ полный 0, программирую в основном на php.Но вопрос вот в чём: вот на скрине...

Качественная сюжетная RPG
Доброго времени суток. Нравиться серия fallout (вторую раз восемь прошел), сейчас потихоньку...

С++; компилятор; Текстовая RPG
И так, пару месяцев назад я тут задавался вопросом как создать игру с графикой на С++ в VS2015....

Изучаю Python, сейчас учу основы ООП, где можно найти задачи по ООП
Скиньте пожалуйста источники с задачами(желательно на русском)


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru