|
2D-программирование Вопросы, касающиеся двумерного программирования |
19.01.2012, 21:42
|
#76
|
Бывалый
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений (для 275 пользователей)
|
Ответ: Опять проблемы.
А чем лучше .png?
Сейчас переделаю камни, но не будут ли они слишком маленькими? И ставить камни на "1", если кому-нибудь захочется
Вообще это как-то странно. У меня есть очень качественная текстура камня, но выглядит хуже чем эта в игре В общем сейчас дам две версии.
|
(Offline)
|
|
19.01.2012, 21:49
|
#77
|
Бывалый
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений (для 275 пользователей)
|
Ответ: Опять проблемы.
Версия с уменьшенными камнями, но увеличенным количеством камней(в 10 раз ).
Последний раз редактировалось Nikich, 05.02.2012 в 22:16.
|
(Offline)
|
|
19.01.2012, 21:54
|
#78
|
Бывалый
Регистрация: 16.09.2009
Адрес: Sun system
Сообщений: 831
Написано 442 полезных сообщений (для 1,836 пользователей)
|
Ответ: Опять проблемы.
*.png весит меньше.
А если использовать Xors3D то можно будет добавить альфа-канал.
А что касается текстур - надо чтобы стиль совпадал. Сейчас нормально.
А если брать фотографичную текстуру, то надо и для всего остального подогнать аналогичные.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
19.01.2012, 21:59
|
#79
|
Бывалый
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений (для 275 пользователей)
|
Ответ: Опять проблемы.
Спасибо за совет.
Сейчас наработал цикл для того, чтобы камни были вместе. Это не очень удобно так как, когда их много и они далеко друг от друга передвигаться почти невозможно.
For i=1 To imax
m.Main=New Main
m\stone=LoadImage("stone.bmp")
stonex(i)=Int(Rnd(0,1280)/32)
stoney(i)=Int(Rnd(0,1024)/32)
If i Mod 2 = 0 Then
chance=Rnd(3)
If chance=1 Then
stonex(i)=stonex(i-1)+1
stoney(i)=stoney(i-1)+1
EndIf
If chance=2 Then
stonex(i)=stonex(i-1)-1
stoney(i)=stoney(i-1)-1
EndIf
EndIf
m\x=stonex(i)*32
m\y=stoney(i)*32
m\life=10
Next
Но всё равно, большие горы не получаются Может у кого-нибудь есть другие идеи?
|
(Offline)
|
|
19.01.2012, 22:31
|
#80
|
Бывалый
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений (для 275 пользователей)
|
Ответ: Опять проблемы.
А и забыл спросить, у кого какой FPS?
|
(Offline)
|
|
19.01.2012, 23:19
|
#81
|
Бывалый
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений (для 275 пользователей)
|
Ответ: Опять проблемы.
Function DrawInventory()
For cell.Inventory=Each Inventory
DrawImage cell\image,cell\x,920
For i=1 To 5
If cellid(i)=2 Then
DrawImage istone,cell\x+10,930
EndIf
Next
Next
End Function
Function CreateInventory()
For i=1 To 5
cell.Inventory=New Inventory
cell\x=fa
fa=fa+72
cell\id=1
cellid(i)=cell\id
cell\image=LoadImage("cell.bmp")
Next
End Function
Function AddItem(ItemId)
For i=1 To 5
If finish=0 Then
If cellid(i)=1 Then
cellid(i)=ItemId
finish=1
EndIf
EndIf
Next
End Function
Можете сказать, где тут ошибка? Проблема в том, что камень рисуется сразу во всех клеточках
Также, если всё пойдёт гладко, то на этих выходных можно будет доделать игру до демки Так называемая версия 0.0.1
|
(Offline)
|
|
19.01.2012, 23:22
|
#82
|
Гигант индустрии
Регистрация: 13.09.2008
Сообщений: 2,893
Написано 1,185 полезных сообщений (для 3,298 пользователей)
|
Ответ: Опять проблемы.
Вот почитай "Инвентарь". Только когда писал статью кодил хуже и поэтому наговнокодил, но полезной инфы можно подчернуть.
|
(Offline)
|
|
19.01.2012, 23:28
|
#83
|
Бывалый
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений (для 275 пользователей)
|
Ответ: Опять проблемы.
Я уже читал эту статью, благодаря ей я и понял основы
Хотелось по максимуму ужать код, но видимо не получилось
У меня почти всё правильно, так как клетке присваивается нужный id, но рисуется объект всё равно во всех
|
(Offline)
|
|
19.01.2012, 23:51
|
#84
|
Бывалый
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений (для 275 пользователей)
|
Ответ: Опять проблемы.
Всё, проблема решена. Почти все мои проблемы связаны с ошибкой в типах, и решаются использованием массивов
|
(Offline)
|
|
20.01.2012, 17:40
|
#85
|
Бывалый
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений (для 275 пользователей)
|
Ответ: Опять проблемы.
For i=1 To imax
stonex(i)=Int(Rnd(0,1280)/32)
stoney(i)=Int(Rnd(0,1024)/32)
Next
i=1
While finish=0
stonex(i+1)=stonex(i)+1
stoney(i+1)=stoney(i)
i=i+1
If i Mod 4=0 Then
stoney(i)=stoney(i)+1
stonex(i)=stonex(i-Rnd(4))
EndIf
If i Mod 16=0 Then
stonex(i)=Int(Rnd(0,1280)/32)
stoney(i)=Int(Rnd(0,1024)/32)
EndIf
If i=80 Then finish=1
Wend
For i=1 To imax
If stonex(i)<2 Then stonex(i)=stonex(i)+1
If stonex(i)>40 Then stonex(i)=stonex(i)-1
If stoney(i)<0 Then stoney(i)=stoney(i)+1
If stoney(i)>30 Then stoney(i)=0
m.Main=New Main
m\stone=LoadImage("stone.bmp")
m\x=stonex(i)*32
m\y=stoney(i)*32
m\life=10
Next
Это генерация камней группами. Если кому-нибудь пригодиться, можете пользоваться
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 23:41.
|