forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   3D-программирование (http://forum.boolean.name/forumdisplay.php?f=12)
-   -   Как сделать стрельбу (http://forum.boolean.name/showthread.php?t=19903)

softcrasoft 09.07.2015 19:25

Ответ: Как сделать стрельбу
 
то есть никаких сфер и такого ненадо. просто проверка, и если верно, отнимаем хп и воспроизводим звук.

L-ee-X 09.07.2015 19:30

Ответ: Как сделать стрельбу
 
Ent = CameraPick(cam)
If KeyHit("Пробел")
If ent > 0
Воспроизводим звук и отнимаем HP
EndIf
EndIf

L-ee-X 09.07.2015 19:32

Ответ: Как сделать стрельбу
 
Я де тебе в теме про Type подобный пример кидал :-D с ботами и отниманием hp

softcrasoft 09.07.2015 19:33

Ответ: Как сделать стрельбу
 
не понял. а где проверка на объект? ггг. или cam типа объект врага? на и camerapick не видел. тока entitypick ну ща по ищу

softcrasoft 09.07.2015 19:34

Ответ: Как сделать стрельбу
 
та я про этот type ничего походу не пойму. причем тут тип и объект. не понятно.
хотя не знаю можно ли написать филд a=createcube.

L-ee-X 09.07.2015 19:37

Ответ: Как сделать стрельбу
 
Да ты походу вообще ни чего не понимаешь. Возьми тот пример что я тебе написал и добавь туда и звук и тд. И будет тебе счастье. В написание кода выше возможно где то ошибся, пишу на память. В любом случае тебе нужен будет Type как не крути.

L-ee-X 09.07.2015 19:41

Ответ: Как сделать стрельбу
 
Я за тебя уже целую игру можно так сказать написал :-D

softcrasoft 09.07.2015 19:55

Ответ: Как сделать стрельбу
 
извините, я не могу тип привротить или в это:
class blablabla
{
int hp;
int speed;
blablabla()
{
hp = 100;
speed = init(speed);
}
//функции
}
или в это
class blablabla:
def __init(self, hp, speed)
self.hp = hp
self.speed = speed
#Другие функции

softcrasoft 09.07.2015 19:59

Ответ: Как сделать стрельбу
 
ок ну допустим примерно я понял про типы. типа делаем его объект и с ним работаем. а если я делаю таких объектов 5
e1\enemy=New Enemy
e\obj = createCube()

и это в цикле фор. и что, выходит, что в e будет 100 объектов????????????????????

L-ee-X 09.07.2015 20:01

Ответ: Как сделать стрельбу
 
Читай однако справку

softcrasoft 09.07.2015 20:08

Ответ: Как сделать стрельбу
 
какую справку? там про типы по английски. перевод на форуме читал, нефига не понял.
гыгы не представляю даж. пишем bot\hp, и перем у всех потом hp смешно.

L-ee-X 09.07.2015 21:06

Ответ: Как сделать стрельбу
 
Ты хоть пример то смотрел мой про типы, хотя бы понял что к чему там и как отнимается хп у игрока? И при этом отнимается не у всех сразу а именно у того на который наведена мышка. Ты реально тупой. У меня просто слов нет уже ...

St_AnGer 09.07.2015 21:33

Ответ: Как сделать стрельбу
 
МужЫк, извини конечно, но ты наркоман.
Цитата:

Сообщение от softcrasoft (Сообщение 297520)
извините, я не могу тип привротить или в это:
class blablabla
{
int hp;
int speed;
blablabla()
{
hp = 100;
speed = init(speed);
}
//функции
}

Код:

;Вот твой тип (аля класс в цпп)
Type blablabla
    Field hp%;
    Field speed%;
End Type

;Создание "объекта" (коли профи - знаешь что это такое)
Function CreateMotherFucker.blablabla(speed%)
    Local b.blablabla = New blablabla;
    b\hp = 100;
    b\speed = speed;

    Return b;
End Function

;Любая другая функция
Function DieMotherFuckerDie(b.blablabla)
    b\hp = -100500;
    b\speed = 0;
End Function

;Инициализируем переменную и создаём "объект" твоего типа
Local mzfk.blablabla = CreateMotherFucker(100500);

;Выполняем нашу другую функцию, принимающую в себя созданный ранее "объект" твоего типа
DieMotherFuckerDie(mzfk);


;Выведем на экран содержимое "объекта" после выполнения нашей функции
Print("HP: "+mzfk\hp);
Print("Speed: "+mzfk\speed);

;Ждём нажатия любой клавиши и выходим
WaitKey;
End;

"Объект" в кавычках потому, что это не тот объект из цпп или любого ООП языка. Это простая переменная указанного типа, в твоём случае типа blablabla. Но это нечто похожее на "объект", ты можешь получить доступ к его внутренностям (в твоём случае к hp и speed). Доходчивее уже некуда объяснять. Вкуривайся в это, или бросай сию затею.

softcrasoft 09.07.2015 22:19

Ответ: Как сделать стрельбу
 
до вас что не доперает, что я не не понимаю типы, а объекты?
enemy.mesh = createcube()
пишу в цикле фор и что, у меня в одном объекте выходит все 5 кубов.
l-ee-x, как я могу понять код, не понимая что за set, handle и old? если я не понимаю к чему идет обращение?
я уж не веноват что вы тут все английчани и юзаете англ документацию, а если я не такой то сразу придурок и тупой идиот?

St_AnGer 09.07.2015 22:24

Ответ: Как сделать стрельбу
 
Цитата:

Сообщение от softcrasoft (Сообщение 297540)
до вас что не доперает, что я не не понимаю типы, а объекты?
enemy.mesh = createcube()
пишу в цикле фор и что, у меня в одном объекте выходит все 5 кубов.

Нет, ты не понимаешь как раз саму суть типов. Циклом тебе надо создавать несколько enemy, а не несколько кубов в одном enemy.

То есть как то так:
Код:

For i = 1 To 5
    local e.enemy = new enemy;
    e\mesh = CreateCube();
Next

Вот что тебе нужно. Этот код создаст 5 "объектов" enemy с кубами. Ссылку на русскую справку тебе кинули в другом треде, изучай её срочно. Там про типы просто обязано быть написано. Изучишь типы - тогда уже можно будет поговорить об функциях object и handle.


Часовой пояс GMT +4, время: 03:50.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot