Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Delphi > Паскаль
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 22.09.2018, 17:54   #1
Roman_Jarckov23
Пользователь
 
Регистрация: 11.09.2018
Сообщений: 20
Репутация: 10
Вопрос Не правильно срабатывает программа!

Код:

program CLICKER_PIRATE;
uses GraphABC, Utils, Sounds, Events, System.Media;
var

  //SEASEASEASEASEASESAESAESAESEASEASEASEA
  x, y: integer;
  movespeed: real;
  bn: integer;
  ostr, sea, lb1, lb2, lb3, lb4, lb5, lb6, lb7, lb8: string;
  sea1: Picture;
  lb: array[0..7] of Picture;

procedure sea3();
begin
  LockDrawing;
  Window.Maximize;
  Window.CenterOnScreen;
  Window.IsFixedSize := True;
  Window.Clear;
  sea := 'data\res\sea.png';
  sea1 := Picture.Create(sea);
  sea1.Load(sea);
  x := 683;
  y := 384;
  bn := 2;
//ifififififififiifififififiifififififif 
    if pLvl <= 10 then
   begin
        lb1 := 'data\res\SEAGAME\lvl1boatup.png';
        lb2 := 'data\res\SEAGAME\lvl1boatleft.png';
        lb3 := 'data\res\SEAGAME\lvl1boatDown.png';
        lb4 := 'data\res\SEAGAME\lvl1boatright.png'; 
        lb[0] := Picture.Create(lb1);
        lb[1] := Picture.Create(lb2);
        lb[2] := Picture.Create(lb3);
        lb[3] := Picture.Create(lb4);
        lb[0].Load(lb1);
        lb[1].Load(lb2);
        lb[2].Load(lb3);
        lb[3].Load(lb4);
        movespeed := 0.55;
   end;  
  if (pLvl > 11) and (pLvl < 20) then
    begin
        lb1 := 'data\res\SEAGAME\lvl2boatup.png';
        lb2 := 'data\res\SEAGAME\lvl2boatleft.png';
        lb3 := 'data\res\SEAGAME\lvl2boatDown.png';
        lb4 := 'data\res\SEAGAME\lvl2boatright.png';
        lb[0] := Picture.Create(lb1);
        lb[1] := Picture.Create(lb2);
        lb[2] := Picture.Create(lb3);
        lb[3] := Picture.Create(lb4);
        lb[0].Load(lb1);
        lb[1].Load(lb2);
        lb[2].Load(lb3);
        lb[3].Load(lb4);
        movespeed := 1;
    end;
   
//ifififififififiifififififiifififififif   
  while true do     
  begin
    sea1.Draw(10, 0);
    lb[bn].Draw(x, y);
    creat();
    lb[bn].Draw(x, y);
    ReDraw;
  end;


В процедуре sea3 Выдаёт ошибку: CLICKER_PIRATE.pas(203) : Ошибка времени выполнения: Object reference not set to an instance of an object.
Должно быть так: Если уровень меньше 10, то корабль такой, если больше 11, но меньше 20, то отрисовывай такой корабль! Что делать?
Roman_Jarckov23 вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Таймер срабатывает раньше времени или вообще не срабатывает Terebonko JavaScript, Ajax 1 03.08.2017 12:48
программа не правильно работает skyline17 Паскаль 6 07.01.2015 19:23
Что не правильно? Программа на C++ находит минимум правильно, а максимум нет. В чем погрешность? rafael999 Помощь студентам 3 26.10.2013 11:21
MouseEnter не срабатывает правильно из-за границ картинок Uniskull WPF, UWP, WinRT, XAML 0 17.12.2012 21:31
Виртуальные функции фунция срабатывает не правильно кто поможет найти ошибку Progsenya Общие вопросы C/C++ 1 24.08.2010 01:22


16:18.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru