Помогите c Dark Basic 
				  
AGENTX001 Дата: Понедельник, 04 Апреля 2011, 16:52 | Сообщение # 1   
 
почётный гцупер
Сейчас нет на сайте 
 
 Всем привет! Я недавно начал осваивать дарк,возниквопрос со столкновениями спрайтов. (Я делаю 2д игру)   
Code
sync on    sync rate 60    load image "tank.png", 1 : load image "block.png", 2   sprite 1, tankx, tanky, 1 : OFFSET SPRITE 1, 25, 25   sprite 2, 25, 25, 2    tankx = 100 : tanky = 100 : move = 1   do    cls 0    sprite 1, tankx, tanky, 1 : paste sprite 2, 25, 75   if move = 0 then move = 1   if upkey () = 1    if rightkey () = 1 then move = 0    if leftkey () = 1 then move =0   endif   if downkey () = 1    if rightkey () = 1 then move = 0    if leftkey () = 1 then move =0   endif   if upkey () = 1     if move = 1     tanky = tanky - 1 : rotate sprite 1, 0      if sprite hit (1, 2) = 0 then tanky = tanky      if sprite hit (1, 2) = 1 then tanky = tanky + 1   endif   endif   if downkey () = 1     if move = 1     tanky = tanky + 1 : rotate sprite 1, 180      if sprite hit (1, 2) = 0 then tanky = tanky      if sprite hit (1, 2) = 1 then tanky = tanky - 1   endif   endif   if rightkey () = 1     if move = 1     tankx = tankx + 1 : rotate sprite 1, 90      if sprite hit (1, 2) = 0 then tankx = tankx      if sprite hit (1, 2) = 1 then tankx = tankx - 1   endif   endif   if leftkey () = 1     if move = 1     tankx = tankx - 1 : rotate sprite 1, 270      if sprite hit (1, 2) = 0 then tankx = tankx      if sprite hit (1, 2) = 1 then tankx = tankx + 1   endif   endif   sync   loop 
    + будет Добавлено  (04.04.2011, 16:52) --------------------------------------------- Ну нарррод!!!
 
 
 
 
Azver Дата: Понедельник, 04 Апреля 2011, 21:10 | Сообщение # 2   
постоянный участник
Сейчас нет на сайте 
 
 Тебе нужен не sprite hit , а sprite collision . 
 
 
 
AGENTX001 Дата: Понедельник, 04 Апреля 2011, 22:02 | Сообщение # 3   
 
почётный гцупер
Сейчас нет на сайте 
 
 Azver , спс, шас попробую!Добавлено  (04.04.2011, 22:01) --------------------------------------------- Ага, что-то получается(= Но танк сталкивается только с теми блоками, которые были созданы функцией sprite , а те которые вставляю с помощью paste sprite  он игнорирует. И танк как-то застряёт((
Добавлено  (04.04.2011, 22:02) --------------------------------------------- Поможеш?
 
 
 
 
Azver Дата: Понедельник, 04 Апреля 2011, 22:26 | Сообщение # 4   
постоянный участник
Сейчас нет на сайте 
 
 paste image  просто отрисовка изображения на экране, а вот sprite  это 3d плашки, поэтому 2д коллизии можно осуществить только с ними. Танк застревает так как у тебя это не скользящие коллизии, для них нужно юзать внешние библиотеки физики или самому извращаться со стандартными командами. 
 
 
 
AGENTX001 Дата: Понедельник, 04 Апреля 2011, 22:31 | Сообщение # 5   
 
почётный гцупер
Сейчас нет на сайте 
 
 Quote  (Azver )
paste image просто отрисовка изображения на экране, а вот sprite это 3d плашки, поэтому 2д коллизии можно осуществить только с ними.
    У меня Quote  (AGENTX001 )
 paste sprite
    Quote  (Azver )
нужно юзать внешние библиотеки физики или самому извращаться со стандартными командами
    А ссылочку неполучиться подкинуть? Пожалуйста... 
 
 
 
Azver Дата: Вторник, 05 Апреля 2011, 16:25 | Сообщение # 6   
постоянный участник
Сейчас нет на сайте 
 
 Quote  (AGENTX001 )
paste sprite
 Не подходит для использования коллизий, так как он дублирует уже созданный спрайт и тупо его отображает в точке на экране. Так что создавай столько спрайтов сколько надо.  
Quote  (AGENTX001 )
А ссылочку неполучиться подкинуть? Пожалуйста... 
 Поищи на TGC, я с таковыми не сталкивался.