Skocz do zawartości
  • Ogłoszenia

  • Gdzie świętować urodziny GMCLANu   33 użytkowników zagłosowało

    1. 1. Gdzie świętować urodziny GMCLANu


      • Warszawa (bo w centrum)
      • Szczecin (bo tam mieszka Ranma i narodził się GMCLAN)

    Żeby zagłosować w tej ankiecie, prosimy się zalogować lub zarejestrować. Zobacz temat
Roki

Pytania Od Rokiego :D

Rekomendowane odpowiedzi

w PROGRESS gry pierw całość jest rysowana do canvas, dopiero potem canvas jestrysowany na ekran - to zostało zastosowane dla możliwości użycia efektu falowania ekranu. i problem leżał w tym że kolory tego recta, który rysował canvas na ekran, wyzerowałeś mu kolory wierzchołków. wystarczy że zamiast 0 dasz im 1:

 

// rysujemy prostokat powierzchni rysowania
rect.Begin = XE_VECTOR( 0, 600 );                    // pozycja poczatkowa
rect.End = XE_VECTOR( 800, 0 );                        // pozycja koncowa
rect.Color[ 0 ] = XE_VECTOR( 1, 1, 1 );                // kolor wierzcholka
rect.Color[ 1 ] = XE_VECTOR( 1, 1, 1 );
rect.Color[ 2 ] = XE_VECTOR( 1, 1, 1 );
rect.Color[ 3 ] = XE_VECTOR( 1, 1, 1 );
rect.Filled = true;                                    // wypelniony prostokat
rect.Texture = Game.Canvases( "main" )->Texture();    // tekstura czworokata
rect.Draw();

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Chce żeby okno gry miało 800x600(mam), view miał(to co widzi) 800x600(mam), oraz żeby ogólnie cała gra miała 1000x1000, tylko żeby ten view nie pokazywał całego. Jak to zrobić?

 

@EDIT:

Btw. Dlaczego Output(Debug), pokazuje mi:

'Green.exe': Loaded 'C:\Program Files\WIDCOMM\Bluetooth Software\BTKeyInd.dll'

Nie używam BT, więc why :o

 

@EDIT2:

Kolejny problem, samo od siebie się zepsuło :o

1>c:\users\przemek\desktop\green\application\appdata.h(118) : error C2533: 'CBlock::{ctor}' : constructors not allowed a return type

1>c:\users\przemek\desktop\green\application\appdata.h(449) : error C2264: 'CBlock::CBlock' : error in function definition or declaration; function not called

1>c:\users\przemek\desktop\green\application\appdata.h(594) : error C2264: 'CBlock::CBlock' : error in function definition or declaration; function not called

1>c:\users\przemek\desktop\green\application\appevents.h(258) : error C2065: 'Editor' : undeclared identifier

1>c:\users\przemek\desktop\green\application\appevents.h(258) : error C2228: left of '.Load' must have class/struct/union

1> type is ''unknown-type''

1>c:\users\przemek\desktop\green\application\appevents.h(283) : error C2065: 'Editor' : undeclared identifier

1>c:\users\przemek\desktop\green\application\appevents.h(283) : error C2228: left of '.Update' must have class/struct/union

1> type is ''unknown-type''

1>c:\users\przemek\desktop\green\application\appevents.h(299) : error C2065: 'Editor' : undeclared identifier

1>c:\users\przemek\desktop\green\application\appevents.h(299) : error C2228: left of '.Render' must have class/struct/union

1> type is ''unknown-type''

1>c:\users\przemek\desktop\green\application\appevents.h(307) : error C2065: 'Editor' : undeclared identifier

1>c:\users\przemek\desktop\green\application\appevents.h(307) : error C2228: left of '.Save' must have class/struct/union

1> type is ''unknown-type''

1>c:\users\przemek\desktop\green\application\appevents.h(308) : error C2065: 'Editor' : undeclared identifier

1>c:\users\przemek\desktop\green\application\appevents.h(308) : error C2228: left of '.Load' must have class/struct/union

1> type is ''unknown-type''

1>c:\users\przemek\desktop\green\application\appevents.h(328) : error C2065: 'Editor' : undeclared identifier

1>c:\users\przemek\desktop\green\application\appevents.h(328) : error C2228: left of '.Active' must have class/struct/union

1> type is ''unknown-type''

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach
Chce żeby okno gry miało 800x600(mam), view miał(to co widzi) 800x600(mam), oraz żeby ogólnie cała gra miała 1000x1000, tylko żeby ten view nie pokazywał całego. Jak to zrobić?

w temacie przykładów znajduje się przykład Viewów.

zmienne klasy viewów:

ViewPortPos to pozycja viewa na ekranie.

ViewPortSize to rozmiar viewa na ekranie.

ScenePortPos to pozycja viewa na scenie.

ScenePortSize to rozmiar viewa na scenie.

 

'Green.exe': Loaded 'C:\Program Files\WIDCOMM\Bluetooth Software\BTKeyInd.dll'

masz włączoną aplikacje/serwis który w tle podpina się pod inne działające aplikacje, za pomocą DLL injection - jeśli to nie wirus ani keylogger (antywir nie powinien go wtedy dopuścić do życia), to nie masz się czym przejmować.

 

c:\users\przemek\desktop\green\application\appdata.h(118) : error C2533: 'CBlock::{ctor}' : constructors not allowed a return type

konstruktor nie ma prawa zwracać żadnej wartości, czytaj: żadne void lub inny typ ma nie widnieć przed deklaracją i definicją konstruktora.

 

1>c:\users\przemek\desktop\green\application\appdata.h(449) : error C2264: 'CBlock::CBlock' : error in function definition or declaration; function not called

z powodu błędu wyżej traktuje konstruktor jak funkcję, czego nie może zrobić.

 

1>c:\users\przemek\desktop\green\application\appevents.h(258) : error C2065: 'Editor' : undeclared identifier

Brak obiektu Editor, musiałeś go usunąć zza definicji klasy CEditor. reszta błędów tyczy się tego błędu.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Doszedłem co było błędem(sprawdziłem z Boxee Game), otóż:

/* Klasa Edytora */

class CEditor

{

//... klasa edytora(który nie działa, bo mi się nie chce poprawiać :D) ...

}Editor;

 

Brakowało po nawiasie "}", tego: "Editor;", tylko nie wiem dlaczego, bo w innych klasach tak nie mam :o

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

otóż taki zabieg:

class Klasa{

}Obiekt;

to nic innego jak:

class Klasa{

};

Klasa Obiekt;

czyli od razu deklarujesz obiekt danej klasy, taka skrócona forma.

A obiekt Editor jest wymagany tam do tego by można było ładować i zapisywać poziomy (także w scenie gry).

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

tak, zawsze można sprawdzić w dokumentacji, jakiego typu są konkretne zmienne :)

Klasa C_VIEW z tego co pamiętam.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Dodałem GUI, ale mam problem.

 

1.Mam wyskakujące okno PopUp, jak zrobić żeby nie wyskakiwało od razu, po starcie gry?

2.Jak zrobić żeby wyświetlić ten PopUp wtedy, kiedy chce, a w nim wyświetlić pole tekstowe, tylko żeby było z suwakiem, jak by ktoś wpisał dużo, po czym pobrać dane z tego pola i zapisać do zmiennej?

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

w przykladzie GUI w pliku Scheme.xml sa 2 rooty interfejsow, glowny laduje sie <Root> a w kodzie gry jak mozna zauwazyc w funkcji buttona w sekcji "OpenWindow" lub "Logout" jest kod ladujacy schemat z <RootPopup> lub <RootWindow> z pliku Scheme.xml, wystarczy ze ten root popupa bedziesz ladowal w jakiejs funkcji, podajac wskaznik na kontrolke (do ktorej chcemy przyczepic ladowany interfejs) lub 0 (jesli ma nie podpinac sie do zadnej kontrolki) jako argument o nazwie parent w C_GUI_LOADER::LoadScheme().

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Rozumiem zatem że to:

proc.Access( "Popup" ) = PopupDoEvents;

mam ładować w funkcji, dotąd rozumiem, ale nie rozumiem tego:

podajac wskaznik na kontrolke (do ktorej chcemy przyczepic ladowany interfejs) lub 0 (jesli ma nie podpinac sie do zadnej kontrolki) jako argument o nazwie parent w C_GUI_LOADER::LoadScheme().

 

Nie jestem zbyt dobry w C++ ;/

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

looknij w kod ButtonDoEvents(), szukaj tam sekcji z if( type == "OpenWindow" ) i w niej jest kod ladujacy schematy okna ktory znajduje sie w <RootWindow> w Scheme.xml. dokladnie taki kod chcesz wykorzystac, znajduje sie w nim bodajze na ostatnim argumencie funkcji cos jak Game.GUI.ControlNames( "MainWindow" ), to zwraca wskaznik na kontrolke glownego okna, pod ktorego podczepiamy te nowe okno co sie tworzy w tejfunkcji.

wiem ze nie opisalem jakzarzadzac plikami xml ale to po srodzie powinienem miec dopiero na to czas niestety.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Ale jak to jest w ButtonDoEvents() to się wykonuje po kliknięciu buttona, a ja chce po kliknięciu myszką :P

I to coś nie rozwiązuje pierwszego problemu, ze popup pokazuje się po starcie gry ;/

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

bo w <Root> jest tag <Include>, ktory laduje wlasnie ten <RootPopup> z tego samego pliku. usun <Include Node="RootPopup" /> i nie bedzie tworzyl na starcie :)

takjakmowie do srody nie jestem w stanie pomoc wiecej

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Okej, popróbuję ale jutro, bo dziś jeszcze lekcje musze zrobić ;/

Dzięki :P

 

@EDIT: Działa :P Poza pokazywaniem PopUp'a ;/

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników, przeglądających tę stronę.

×