Skocz do zawartości

Zablokowane Xenon Pacman


Rekomendowane odpowiedzi

Opublikowano
proszę cie... nie mów jak doda -.- Po co mam dawać source skoro twierdzisz że mój kod jest do d... niczego ??

po to żeby się czegoś nauczyć?

 

Przede wszystkim kod jest mało czytelny. Nie wstawiaj all do jednego/dwóch plików.

Masz aktora C_GRACZ(to C ma jakieś zastosowanie?) to zrób mu pliki z *.h i *.cpp deklaracje w pliku nagłówkowym definicje w cpp. Docenisz to później jak będziesz miał większe projekty na głowie.

 

Przykład :

 

file: Gracz.h

class Gracz: public XE_Actor
{
public:
   /*
   update.. blablabal
   */
  void update();
  /*
    render blablala
  */
    void render();
private:

    //blabla
    int data;
    //blabla
    object* ptr;
    
};

file: Gracz.cpp

#include"Gracz.h"


void Gracz::update()
{
//code
}


void Gracz::render()
{

}

 

 

Nie odwołuj się do obiektów przez stringi(np: Game.Sprites.Access( "spr_gracz2" )) to jest cholernie wolne. Używaj indexów/uchwytów albo hash-niętych stringów(w unrealu bodajże nazywane jest to "name" możesz też często to znaleźć jako StringId).

 

 

Nie dawaj żadnych danych jako public w klasach. Od tego typu konstrukcji masz POD'y.

 

class C_BONUS : public XE_ACTOR2D
{
    public:
            XE_VECTOR pos;
            int hp;
            ...

 

 

Jak już pisałem nie korzystaj z alokacji na stercie jeśli nie musisz.

 

  Game.RegisterActor( "MALY_KOLEC", new C_MALY_KOLEC( XE_VECTOR( Position.X+9, Position.Y ) ) );
        Game.RegisterActor( "MALY_KOLEC", new C_MALY_KOLEC( XE_VECTOR( Position.X+9, Position.Y+20 ) ) );
        Game.RegisterActor( "MALY_KOLEC", new C_MALY_KOLEC( XE_VECTOR( Position.X+9, Position.Y+40 ) ) );
        Game.RegisterActor( "MALY_KOLEC", new C_MALY_KOLEC( XE_VECTOR( Position.X+9, Position.Y+60 ) ) );
        Game.RegisterActor( "MALY_KOLEC", new C_MALY_KOLEC( XE_VECTOR( Position.X+9, Position.Y+80 ) ) );
        Game.RegisterActor( "MALY_KOLEC", new C_MALY_KOLEC( XE_VECTOR( Position.X+9, Position.Y+100 ) ) );
        Game.RegisterActor( "MALY_KOLEC", new C_MALY_KOLEC( XE_VECTOR( Position.X+9, Position.Y+120 ) ) );
        Game.RegisterActor( "MALY_KOLEC", new C_MALY_KOLEC( XE_VECTOR( Position.X+9, Position.Y+140 ) ) );
        Game.RegisterActor( "MALY_KOLEC", new C_MALY_KOLEC( XE_VECTOR( Position.X+9, Position.Y+160 ) ) );
        Game.RegisterActor( "MALY_KOLEC", new C_MALY_KOLEC( XE_VECTOR( Position.X+9, Position.Y+180 ) ) );

 

Jest to bardzo wolne+fragmentacja pamięci+masa pamięci się marnuje.

Zamias tego w klasie WYRZUTNIA_KOLCOW:

 

private:

    MALY_KOLEC m_aKolce[10];

Dodaj sobie tylko odpowiednie metody manipulujące i po problemie lub skorzystaj z alokatorów jakie oferuje silnik. Zyskujesz na prędkości/pamięci/bezpieczeństwie.

 

void C_MALY_KOLEC::Render()
{
    DrawSprite();
}

Po co to? Jeśli korzystasz z standarowego renderowania to silnik to załapie i sam wyrenderuje co trzeba.

Opublikowano

Dla mnie gra w wykonaniu jest po prostu... dostałbym kare za wulgaryzm :) Pomysł nie jest jeszcze taki do bani, więc się postaraj i popraw to i owo a może coś tam osiągniesz. Ode mnie masz 2/5 (za pomysł) I nie popisuj się takimi długimi kodami, bo można to zrobić krócej.

Opublikowano
Można zrobić krócej, a nie będę ci dzieciaku prezentował.

Po 1. Nie dzieciaku. Jesteś tylko rok starszy( a bynajmniej pisze że masz 18 lat )...

Po 2. Nie napisałbyś tego... za cienki w majtach jesteś -.-

Opublikowano
bez kłotni mi tu Żuczki, bo Was wykastruje
Opublikowano

@up

nie zmieniaj tak cytatów(przykryziom = dobryziom mój panie)

 

Po 1. Nie dzieciaku. Jesteś tylko rok starszy( a bynajmniej pisze że masz 18 lat )...

to, że jesteś dzieciakiem(bo jesteś) zależy od twojego poziomu rozmowy i inteligencji, a nie od wieku

Opublikowano

Zachowujesz się jak wyszczekane dziecko z polskich blokowisk, ot co. Temat zamknąć należy bo o xenonie możecie sobie na forum psichixa gadać a i kłótni nie będzie.

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...