Форум: "Игры";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
ВнизАлгоритм хождения шашки в игре монополия Найти похожие ветки
← →
alx1979 (2003-10-03 14:07) [0]Помогите плиз нужен Алгоритм хождения шашки в игре монополия (та котороя с костями настольная) надо по квадрату ходить не въезжаю как отловить
текущюю позицию и куда ее прибамбахать.
← →
Hooch © (2003-10-03 14:11) [1]>> не въезжаю как отловить
Hook надо поставить
>> и куда ее прибамбахать
попробуй прибамбахать к прибамбуху
← →
alx1979 (2003-10-06 12:02) [2]Ставлю вопрос с головы на ноги
Если есть такие люди, кто не играл в монополию, расскажу, что там бросают 2 шестигранных кубика и идут фишкой вперёд на выпавшее число по 40-клеточному кругу.
Подскажите как организовать хождение фишки по такому полю ?
0 0 0 0 0 0 0 0 0 0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0 0 0 0 0 0 0 0 0 0
← →
Chiefatin (2003-10-06 12:11) [3]Ну и в чем проблема то?
← →
alx1979 (2003-10-06 13:55) [4]Проблема как вычислить текущее положение и сколько в каком положение ходить дальше
← →
Hooch © (2003-10-06 14:01) [5]монополию пишем ? :-)
← →
pasha_676 © (2003-10-06 14:05) [6]
> Проблема как вычислить текущее положение и сколько в каком
> положение ходить дальше
Проблемма в голове. Текущее положение не вычисляется. Оно запоминается. Например в структуре фишке отдельным полем.
Следующее положение - вычисляется. Например все клетки на поле имеют номер. Тогда [новыое положение]=[старое положение]+[значение кубиков]. При превышение нового положения>макс числа положений - выдать 200$ и вычислить остаток - он и будет новым положением.
> по 40-клеточному кругу.
Ты точно монополию делаешь? В ней вроде не 40, а 38 клеток на поле.
← →
alx1979 (2003-10-06 14:43) [7]>Ты точно монополию делаешь? В ней вроде не 40, а 38 клеток на поле.
Квадрат 11х11 полей
← →
alx1979 (2003-10-06 14:47) [8]> Тогда [новыое положение]=[старое положение]+[значение кубиков].
Новое положение когда нить вырастит ох..ненно и че мне тогда вычитать ?
← →
pasha_676 © (2003-10-06 15:20) [9]
> Новое положение когда нить вырастит ох..ненно
Ну вы блин даете...
if NewPosition>MaxPosition then NewPosition:=NewPosition-MaxPosition - что то в этом духе
Ты точно уверен что сможешь монополию написать? Там ведь еще залоги существуют, домики-отели, принадлежность разным игрокам, а уж если ИИ добавлять... А тут ты еще не разберешься как по кольцу ходить.
> Квадрат 11х11 полей
Может я уже все подзабыл. Бывает.
← →
Mystic © (2003-10-06 15:40) [10]Если все поля линейно пронумеровать от Start = 0 до Microsoft (MAX_FIELD-1), то получим:
InitializeGame();
Player := 0;
repeat
BeforeMove(Player, Position);
RepeatCount := 0;
repeat
Cube1 := Random(6);
Cube2 := Random(6);
if (Cube1 = Cube2) and (RepeatCount = 2) then
begin
GotoPrison(Player);
Break;
end;
Position := Position + Cube1 + Cube2;
while Position >= MAX_FIELD do
begin
Position := Position - MAX_FIELD;
Cash := Cash + ROUND_BONUS;
end;
AfterMove(Player, Position);
if GameOver() then Break;
if Cube1 <> Cube2 then Break;
RepeatCount := RepeatCount + 1;
until False;
Player := Player + 1;
if Player >= PLAYER_COUNT then Player := 0;
until False;
← →
Mystic © (2003-10-06 15:42) [11]Опечатка, вместо
Cube1 := Random(6);
Cube2 := Random(6);
конечноCube1 := Random(6) + 1;
Cube2 := Random(6) + 1;
← →
alx1979 (2003-10-07 09:18) [12]> А тут ты еще не разберешься как по кольцу ходить.
Просто когда такой форум существует не охото четео думать было над етим.
А как напишу выложу
Страницы: 1 вся ветка
Форум: "Игры";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.042 c