Несколько вопросов
В процессе изучение блица возник ряд вопросов.
Собственно: 1.У меня в игре есть частицы.Создаются они таким образом: Function CreateSpark1.TSpark(x#,y#,z#,n) For i=1 To n ;кол-во частиц s1.TSpark= new TSpark ..... Return s1 next End Function Function CreateSpark2.TSpark(x#,y#,z#,n) For i=1 to n s2.TSpark= new TSpark ..... Return s2 next End Function А обновляются в главном цикле так: For s1.TSpark = each TSpark UpdateSpark1(s1) ; ф-я изменяющая местоположение частиц Next For s2.TSpark = each TSpark UpdateSpark2(s2) Next Мне представлялось, что каждый тип частиц будет двигаться так, как задано в его (типе) функции апдейта.Но на практике траектория частицы получается смесью всех функций апдейта. То есть все частицы всех типов летят одинаково и по какой-то дурцкой траектории. Подскажите как правильно написать структуру создания и обновления частиц, чтобы каждый тип частиц имел уникальную траекторию. 2.Каким образом можно создать сетку для трехмерного игрового поля(террэин), пусть и плоского.В 2д сетке, ячейками являются изображения или ректанглы.А чем будут являтся ячейки в сетке для 3д поля? 3.На каком-то форуме нашел код: type Thing field name$ field Type field g.Gun, p.Pistol end Type type Gun field Power#, Freq# end Type Type Pistol field Power#, TypePula end type Захотел применить его для своего инвентаря. По моим представления этот код написан чтобы,например,у g.Gun, был параметр name$, у p.Pistol был параметр name$ и т.п. То есть чтобы у нескольких типов были общие параметры.Если это не так, то возможно ли сделать так как я представил это себе и как. И как ссылаться на такой тип. Буду признателен, если рассеете мои заблуждения. |
Ответ: Несколько вопросов
1. Проще всего два разных типа сделать.
Цитата:
3. Ну ты всё правильно понимаешь. |
Ответ: Несколько вопросов
1. У афтора и есть 2 разных типа
Лично моё имхо Я делал чяастицы так У меня 1 всего тип И есть параметры массы, вектор скорости, время жизни и т.п. Оперируя этими параметрами можно получить пыль, искры, светлячки и много чего ещё. Лучше делать побольше параметров чтобы можно было настроить поведение частиц, а на все типы частиц всё равно типов не напасёсся (максимум 5 типов сделаешь потом задолбает) В коде не фкуриваю как у тебя функция типа spark возвращает объект типа TSpark, это имхо работать не будет, да ещё у тебя две функции CreateSpark продекларированы, сч одинаковым именем. Проверь, ты правильно сюда код скопировал? Код:
Function CreateSpark.spark(x#,y#,z#,n) Хотя может я не совсем понял шо те надо. 3. Вообще делается класс Item, от него наследуются классы Weapon, Medkit,Eqip от Weapon наследуются Meele и Distance, от Distance наследуются Pistol, Gun, AutomatKalashnikova и всем трём задаются свои дополнительные переменные и свойства. Но это увы только там где есть ООП. В блитзе я бы сделал один тип Thing и прямо в ём бы и писал все параметры которые понадобятся как пистолету, так и ружью, плюс к этому - тип оружия, 0 - пистолет 1 - ружжё. В обоих случяаях будет юзаццо филд Power#, но в случае с пистолетом будет ещё юзацо филд TypePula а Freq# будет просто болтаться без дела, а если это ружьё, то наоборот. И обрабатывать естественнов зависимости от типа оружия. |
Ответ: Несколько вопросов
1.На самом деле у меня тоже один тип :) ( spark - TSpark - опечатка, исправил).Название ф-ий тоже разное и тоже исправил.
Так как же мне аптейтить какждую переменнуя типа (s1.TSpark,s2.TSpark) чтобы не затрагивать другие?По идеи надо где-то писать First. Поделитесь примером. 2.Понял 3.А я думал блиц объектно ориентированный язык :O. Я еще слышал понятие - вложенные типы, это тоже самое? |
Ответ: Несколько вопросов
3. Нет, блитц не имеет ООП. За ООП смотри в сторону BlitzMax и Blitz3D SDK.
А еще вот сюда загляни: http://forum.boolean.name/showthread.php?t=1194 |
Ответ: Несколько вопросов
Цитата:
грузи тексу, буферизируй, малюй сетку, "размножь": tertex=loadtexture("t.jpg") ;256x256 BackBuffer(tertex) color 0,0,255 line 1,256,256,256 line 256,1,256,256 SetBuffer BackBuffer() scaletexture tertex,10,10 entitytexture terrain,tertex |
Ответ: Несколько вопросов
Цитата:
1. движение: скорость, ускорение, угловая скорость, угловое ускорение; 2. внешний вид: текстура, цвет, альфа, размер (он же масштаб, можно раздельный по X и Y); 3. время жизни: несколько стадий (у меня три). между ними все числовые значения интерполируются. Цитата:
|
Часовой пояс GMT +4, время: 11:12. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot