Skocz do zawartości

[C++ i OGL] Strzelanie


Komputerowiec

Polecane posty

Elo. Mam problem dotczacy strzalu z mojej broni xd. No wiec wszystko jest zrobione dobrze, strzal leci tam gdzie ma leciec itp. tyle, ze chce jak nacisnie sie zaluzmy 'C' to zeby on tworzyl NOWY obiekt strzaly i takze go wystrzeliwal, mysle, ze to powinno byc tak, ale mi nie dziala ;/:

 CArrow *arrow = new CArrow;

Potem sa te wszystkie obliczenia i strzal, lecz nic sie nie dzieje, nie moge strzelic :/.

 

Prosze o pomoc.

 

Z gory THX.

 

P.S. Jak cos to moge pokazac kod z funkcja strzelajaca.

Link do komentarza
Udostępnij na innych stronach

Zastosuj jakąś strukturę dynamiczną (np. listę). Do zarządzania wszystkimi pociskami możesz też napisać klasę. W moim projekcie taki sposób zastosowałem, możesz podejrzeć klasy blaster i blastermanager, www.jason.unit1.pl - projekt TooManyTroopers.

Link do komentarza
Udostępnij na innych stronach

Tyle, ze nie chce niczego zmieniac bo sie nie polapie :P. Mam taka funkcje:

void CPlayer::Shoot(CCamera& cam, CMD2Model& modelek)
{
    CArrow *arrow;
    static bool pomoc1 = true;
    static bool pomoc2 = true;
    if(keys['C'] && pomoc2 == true)
    {
                 arrow = new CArrow;
                 pomoc2 = false;
                 }
    if(pomoc2 == false){
    if(true == pomoc1)
    {
            arrow->x = cam.GetX();
            arrow->y = cam.GetY();
            arrow->z = cam.GetZ();
            pomoc1 = false;
            }
    arrow->speed = 1.0f;
    static float dir1 = (float)sin(cam.GetHori() * 3.14f/180.0f) * arrow->speed;
    static float dir2 = (float)cos(cam.GetHori() * 3.14f/180.0f) * arrow->speed;

    arrow->x += dir1;
        arrow->z -= dir2;

        arrow->Render(modelek);

 }
}

 

Gdy klikniemy 'C' to mielismy strzeac, ale cos nie wychodzi :P.

Link do komentarza
Udostępnij na innych stronach

Nie czytałem całego kodu ale jeśli to jest metoda od strzału to linia:

KODarrow->Render(modelek);

powinna być niepałanie gdzie indziej (w pętli rysującej scenę).

Chyba że w silniku jest zarządzanie renderingiem i model jest gdzieś na listę wrzucany o czym nie wiem w tym przypadku :)

www.spider.dathox.com :)

Link do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.

×
×
  • Utwórz nowe...