Воскресенье, 22 Декабря 2024, 20:55

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
slick2d Стрельба персонажа
dwarvenДата: Пятница, 27 Сентября 2013, 23:26 | Сообщение # 1
был не раз
Сейчас нет на сайте
Привет всем начинающий "игродел" не могу придумать как сделать вылет пуль с задержкой происходит вот что :


собственно куски кода

Код
    public void render() {
   if(temp==1) {
    tem=tem+25;
   sprite.draw(bull.x+54, tem);
   }
  }

Это именно класс булет

и в главном классе подача на отрисовку
Код

try {
    for(int i=0;i<10;i++ , Thread.sleep(del)){
    bull.render();  
    del+=10;
      
     
    }
   } catch (InterruptedException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }


Понимаю, что сделано не рационально, но хочу именно так ибо делаю сам и получаю опыт для себя, а не для кого либо!
Движок Slick2d Java + lwjgl подскажите как сделать! зарание благодарен!
x-and1988Дата: Пятница, 27 Сентября 2013, 23:54 | Сообщение # 2
постоянный участник
Сейчас нет на сайте
Ужас, стопорить тред для вылета пулек?
Там же есть метод update(int delta) -вызывается каждый в каждом кадре, после рендера по-моему. В нём и делай.
Я бы, например, ввел бы переменную времени -int time; каждый тик просто добавлял к нему дельту - таким образом имеем внутриигровое время. А потом от этого времени можно исходить - например, как давно был сделан последний выстрел.

псевдокод:
int time = 0;
int lastShoot = 0;

public void update(int delta){
time+=delta;

if (lastShoot+100 < time){
shoot();
lastShoot = time;
}
}

PS достаточно долго пользовался Slick2d - советую переходить на libgdx - им занимаются гораздо активней, на нём больше платформ, он производительней, у него больше документации.


Изучаю Java
My new project
My old project
DARKLORDДата: Суббота, 28 Сентября 2013, 00:51 | Сообщение # 3
был не раз
Сейчас нет на сайте
Цитата
PS достаточно долго пользовался Slick2d - советую переходить на libgdx - им занимаются гораздо активней, на нём больше платформ, он производительней, у него больше документации.

Икс, ну ты нашел кому советовать переходить куда-то. Пусть учится на слике, он проще. А главное пусть учится писать нормальный, валидатный код.
dwarvenДата: Суббота, 28 Сентября 2013, 01:34 | Сообщение # 4
был не раз
Сейчас нет на сайте
Цитата (x-and1988)
libgdx

коней на переправе не меняют. Спасибо попробую сделать так(я сделал так называемый метод в лоб как думал)

Добавлено (28.09.2013, 01:34)
---------------------------------------------

Цитата (DARKLORD)
Икс, ну ты нашел кому советовать переходить куда-то. Пусть учится на слике, он проще. А главное пусть учится писать нормальный, валидатный код.
По поводу валидности, есть такой грешок у меня ,в начале в лоб потом рефакторинг долгий и упорный. Все мы учимся рано или поздно(
x-and1988Дата: Суббота, 28 Сентября 2013, 01:43 | Сообщение # 5
постоянный участник
Сейчас нет на сайте
Цитата (dwarven)
коней на переправе не меняют.

А зря, так придется привыкать и узнавать одну архитектуру, а потом менять на другую. А менять то надо будет...


Изучаю Java
My new project
My old project
dwarvenДата: Суббота, 28 Сентября 2013, 01:46 | Сообщение # 6
был не раз
Сейчас нет на сайте
Цитата (x-and1988)
А зря, так придется привыкать и узнавать одну архитектуру, а потом менять на другую. А менять то надо будет...

Я студент написал курсовой проект забыл)
x-and1988Дата: Суббота, 28 Сентября 2013, 03:55 | Сообщение # 7
постоянный участник
Сейчас нет на сайте
Цитата (dwarven)
Я студент написал курсовой проект забыл)

Я то думал хобби... В таком случае да, что начал, то и делай.


Изучаю Java
My new project
My old project
dwarvenДата: Суббота, 28 Сентября 2013, 17:07 | Сообщение # 8
был не раз
Сейчас нет на сайте
Цитата (x-and1988)
Я то думал хобби... В таком случае да, что начал, то и делай.

Желаение есть=(Времени нету дали курсовой на яве нужно сделать и забыть)

Добавлено (28.09.2013, 17:07)
---------------------------------------------

Код
time+=delta;
    trans.y = -0.9f * time*0.1f;
         
    bull.y+=trans.y;

переписал код в метод update сделал, как вы выразились более валидным, но вижу как летит снаряд только при зажатии кнопки

Скорость пробывал меньше сделать(
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг