Форум программистов, компьютерный форум CyberForum.ru

Игра Марио - найти ошибку в коде - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Рекурсивная функция. Посчитать среднее арифметическое элементов массива http://www.cyberforum.ru/cpp-beginners/thread1100138.html
Нужно с помощью рекурсивной функции посчитать среднее арифметическое элементов массива.
C++ Вычисление наименьшего общего кратного заданной совокупности чисел Нужно написать программу для вычисления наименьшего общего кратного заданной совокупности чисел. Вот код на Паскале. Нужно на си. function Nod(a,b:integer):integer;{определение НОД двух чисел} begin while a<>b do if a>b then a:=a-b else b:=b-a; Nod:=a; end; http://www.cyberforum.ru/cpp-beginners/thread1100132.html
Сделать упрощенную версию функции strtok() C++
#include <iostream> using namespace std; char *slova (char s, bool &prodoljat); int main() { char s; bool prodoljat=1; cin.getline(s,100);
C++ Создать функцию, с помощью которой можно вводить символы до тех пор, пока не будет нажато "Enter"
Нужно создать функцию, с помощью которой можно вводить символы до тех пор, пока не будет нажато "Enter". А потом нужно отобразить в программе эту строку. Моя программа позволяет сделать это, но нужно чтобы это всё было в отдельной функции. #include "stdafx.h" #include <iostream> #include <conio.h> #include <memory.h> using namespace std;
C++ Замена последней цифры на значение наименьшей цифры в записи числа N http://www.cyberforum.ru/cpp-beginners/thread1100104.html
Ошибка в задании Условие:Дано натуральное число N. Получить новое число М, которое образуется из числа N путем замены последней цифры на значение наименьшей цифры в записи числа N. Пример. N = 128 452, М = 128 451. Для начала я делал проверку на то,пустое ли поле.После чего Edit1->Text = N.Length(); Если нет то я нахожу Edit1->Text = N.Length();(не знаю правильно ли я это сформулировал)После...
C++ Построить треугольник, найти площадь данного треугольника Даны отрезки a,b,c,d. Для каждой тройки этих отрезков, из которых можно построить треугольник, найти площадь данного треугольника. использовать функцию определения площади треугольника по длинам его сторон. подробнее

Показать сообщение отдельно
Leonman
15 / 15 / 0
Регистрация: 17.06.2012
Сообщений: 266

Игра Марио - найти ошибку в коде - C++

19.02.2014, 01:25. Просмотров 586. Ответов 2
Метки (Все метки)

Всем доброго времени суток.
Вот взялся сделать платформер с помошью SFML.
Написал код, чтобы персонаж двигался и прыгал. Компилятор выдаёт одну ошибку:
line 83: class PLAYER' has no member named 'update'|

Буду весьма благодарен, за помошь
Вот код:

C++
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#include <SFML/Graphics.hpp>
 
using namespace sf;
 
int ground = 150;
 
class PLAYER
{
public:
    float dx,dy; //Speed
    FloatRect rect; //x, y, weught, haight
    bool onGround; //We on the ground or not
    Sprite sprite; //Location
    float currentFrame; // Текущий кадр
 
        PLAYER(Texture &image)
        {
            sprite.setTexture(image); //upload location
            rect = FloatRect(0,0,40,50); // set start coordinates
 
            dx=dy=0; // speed = 0
            currentFrame = 0; // Текущий кадр
        }
 
    void updare(float time)
    {
        rect.left += dx * time; // cordinate x move to speed + time
        if(!onGround) dy=dy+0.0005*time; // if not on the ground, fall with acceleration
        rect.top+=dy*time; // Прибовляем скорости к времени(корд. Y)
        onGround = false; // не на земле
        if(rect.top > ground) {rect.top=ground; dy=0; onGround = true;}
 
        currentFrame += 0.005*time;
        if (currentFrame > 6) currentFrame -=6;
        if (dx>0) sprite.setTextureRect(IntRect(40*int(currentFrame),244,40,50));
        if (dx<0) sprite.setTextureRect(IntRect(40*int(currentFrame)+40,244,-40,50));
 
        sprite.setPosition(rect.left,rect.top);
 
        dx=0;
    }
};
 
int main()
{
    RenderWindow Window(VideoMode(1000, 500), "Test!");
 
    Texture t;
    t.loadFromFile("fang.png");
 
    float currentFrame=0;
 
    PLAYER p(t);
 
    Clock clock;
 
    while(Window.isOpen())
    {
        float time = clock.getElapsedTime().asMicroseconds();
        clock.restart();
 
        time = time/800;
 
        Event event;
            while (Window.pollEvent(event))
            {
                if(event.type == Event::Closed)
                    Window.close();
            }
            if(Keyboard::isKeyPressed(Keyboard::Left))
            {
                p.dx = -0.1;
            }
            if(Keyboard::isKeyPressed(Keyboard::Right))
            {
                p.dx = 0.1;
            }
            if(Keyboard::isKeyPressed(Keyboard::Up))
            {
                if (p.onGround) {p.dy=-0.4; p.onGround = false;}
            }
 
            p.update(time);
 
        Window.clear(Color::White);
        Window.draw(p.sprite);
        Window.display();
    }
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru