![]() |
![]() ![]() |
![]() |
RathaR |
![]()
Сообщение
#1
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 346 Пол: Мужской Реальное имя: Иван Репутация: ![]() ![]() ![]() |
Начал писать "Монополию", если не выйдет с самообучающимся ИИ, сделаю просто на человек VS ИИ
![]() но вот проблема, программа верней - то что пока написано, вылетает, перед кодом коечто укажу для пояснения: всё поле - это масив из 40 елементов - записей (element); Заполнение поля - это считывание с текстового файла каждого елемента записи, причом для каждого считываеться обязательноего имя, и номер, если елемент поля - участок, то считывается еще и его стоимость, аренда и тд., если транспортная магистраль - то считываеться стоимость, если карточка то считываеться её тип, и тд... И всё якобы хорошо, при первом проходе всё для первого елемента правильно считывает, но когда начинает считываться второй - прога вылетает, не считывает даже обязательные поля... вот код:
в файле только первые 12 елементов, но вылетает на втором Сообщение отредактировано: RathaR - 5.08.2009 21:41 Прикрепленные файлы ![]() -------------------- Считающий себя единственым здравомыслящим человеком сумасшедший? Если да, возможно я псих...
Пусть умолкнет всякий критик! Я - системный аналитик! |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Цитата И всё якобы хорошо, при первом проходе всё для первого елемента правильно считывает, но когда начинает считываться второй - прога вылетает Файл данных мы должны сами придумать, или ты все-таки прицепишь тот, на котором у тебя вылетает? |
volvo |
![]()
Сообщение
#3
|
Гость ![]() |
Все Read-ы на ReadLn исправь, у тебя же каждое данное на новой строке... Символы #10, #13 (перевод строки/возврат каретки) портят тебе всю картину.
|
RathaR |
![]()
Сообщение
#4
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 346 Пол: Мужской Реальное имя: Иван Репутация: ![]() ![]() ![]() |
Все Read-ы на ReadLn исправь, у тебя же каждое данное на новой строке... Символы #10, #13 (перевод строки/возврат каретки) портят тебе всю картину. помогло, спасибо ![]() -------------------- Считающий себя единственым здравомыслящим человеком сумасшедший? Если да, возможно я псих...
Пусть умолкнет всякий критик! Я - системный аналитик! |
RathaR |
![]()
Сообщение
#5
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 346 Пол: Мужской Реальное имя: Иван Репутация: ![]() ![]() ![]() |
и вот снова я нуждаюсь в помощи...
я почти полностью закончил варганить графику в игре, и вот теперь нужно давать имена полям, прописывать правила, и записывать все тексты карточек, НО я не знаю как поступить с записью вот этих карточек (я имею в виду карточки шанс, обществееная казна и тд. а их всего ничего - 16*3=48 - коротеньких текстов) и правил: записывать их в текстовый файл, а потом их при запуске считывать, или же записать ихсразу в программе? В самом начале как только я приступил за "монополию" я думал сделать первым способом, тогда идея была в том чтобы любой желающий смог изменить в одном файлике названия улиц и предприятий на аналогичные в собственном городе ![]() Но сейчас я склоняюсь к тому что это была плохая идея... во первых - слишком много контроля получает человек над игрой (одна очепятка в цыфре, и всё...) а во вторых это прибавляет много проблем, я решил имена и стоимости присваивать сразу в игре, но как поступить с карточками и правилами? Просто у каждой карточки есть её постоянный номер и если её содержимое изменить (вместо "получи 100"написать "заплати 100") то всёрамно игрок согласно номеру карточки получит 100 а не заплатит, и ктомуже хотелось бы сделать игру максимально независимой, ну какбы чтобы был один ексешник и всё ![]() ![]() поетому я и хочу спросить не слишком ли это по "ламерски" записать тексты прямо в тексте програмы? ![]() -------------------- Считающий себя единственым здравомыслящим человеком сумасшедший? Если да, возможно я псих...
Пусть умолкнет всякий критик! Я - системный аналитик! |
volvo |
![]()
Сообщение
#6
|
Гость ![]() |
Цитата не слишком ли это по "ламерски" записать тексты прямо в тексте програмы? Так:OutTextXY(x, y, 'Получи 100');- по ламерски. А вот так: Const sGetMoney = 'Получи 100';- уже нет... Все строки храни в виде констант (массива констант, если быть точнее), а не прямо в коде. С одной стороны - это дает тебе возможность очень быстро заменить строку на другую, не ползать по всему коду. С другой - не дает пользователю возможности поменять что-то (вариант взлома не рассматриваем). |
RathaR |
![]()
Сообщение
#7
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 346 Пол: Мужской Реальное имя: Иван Репутация: ![]() ![]() ![]() |
Все строки храни в виде констант (массива констант, если быть точнее), а не прямо в коде. С одной стороны - это дает тебе возможность очень быстро заменить строку на другую, не ползать по всему коду. С другой - не дает пользователю возможности поменять что-то (вариант взлома не рассматриваем). хэх... опять таки не додумался бы ![]() ![]() -------------------- Считающий себя единственым здравомыслящим человеком сумасшедший? Если да, возможно я псих...
Пусть умолкнет всякий критик! Я - системный аналитик! |
![]() ![]() |
![]() |
Текстовая версия | 20.07.2025 9:12 |