YokTu-Ki Napisano Czerwiec 17, 2007 Zgłoś Share Napisano Czerwiec 17, 2007 Witam! Czy w omedze jest możliwość wykorzystania OmegaGUI ponad mapą, bez konieczności stosowania surface'ów i "wydzielania" pola dla GUI i gry (jako takiej) osobno? Wszystkie próby wciśnięcia panelu (z podstawowych przykładów) bezpośrednio nad grę się kończyły się błedem. Pozdrawiam! Link do komentarza Udostępnij na innych stronach More sharing options...
Toster Napisano Czerwiec 17, 2007 Zgłoś Share Napisano Czerwiec 17, 2007 nie wiem jak rysujesz ale wszystko zalezne jest od kolejnosci renderowania. Jesli najpierw wyrenderujesz mape a pozniej gui to nie ma problemu. Always Dark<br /> Link do komentarza Udostępnij na innych stronach More sharing options...
YokTu-Ki Napisano Sierpień 3, 2007 Autor Zgłoś Share Napisano Sierpień 3, 2007 Żeby nie zakładać nowego tematu: Natknąłem się na problem z wyświetlaniem GUI ponad Spritem. Chodzi o to, że mam panel, na którym wyświetlany jest sprite, i drugi panel, który musi być wyświetlany ponad spritem. Próbowałem z kolejnością, ale nie przyniosło zamierzonego efektu. Da radę jakoś to zrobić? Kod jest dość brudny to nie wrzucam na razie, bo wstyd Link do komentarza Udostępnij na innych stronach More sharing options...
krajew4 Napisano Sierpień 3, 2007 Zgłoś Share Napisano Sierpień 3, 2007 IMO kolejnosc w kodzie ma znaczenie, ale lepiej go tu wklej dla pewnosci. My life for Aiur! Link do komentarza Udostępnij na innych stronach More sharing options...
YokTu-Ki Napisano Sierpień 4, 2007 Autor Zgłoś Share Napisano Sierpień 4, 2007 KOD procedure TMain.Timer1Timer(Sender: TObject); var P: TPoint; MousePoint: TPoint; Sprite: TSprite; begin if not oScreen.CanDraw then Exit else begin oScreen.BeginRender; oMainImages.BeginDraw; oScreen.ClearScreen(200,200,200,0); oGUI.Draw; oSprite.Draw; P := ScreenToClient(Mouse.CursorPos); MousePoint.X := P.X; MousePoint.Y := P.Y; Pole.X := (MapPanel.X + 90); Pole.Y := (MapPanel.Y + 200); if MapPanel.X < 0 then MapPanel.X := 0; If MapPanel.Y < 0 then MapPanel.Y := 0; Sprite := oSprite.GetSpriteAt(MousePoint.X, MousePoint.Y, True, False); if Sprite <> nil then begin oFont1.BeginFont; oFont1.Print((MapPanel.X + 13), (MapPanel.Y + 290), 'Owner: --- None ---', 255,255,255,155); oFont1.EndFont; end; oMainImages.EndDraw; oScreen.EndRender; oInput.Update; end; end; To jest fragment timera. Gdyby było potrzebne coś więcej: Plik Mi już brak pomysłów jak to pogodzić, poza przeniesieniem tego na buttony... Ech Link do komentarza Udostępnij na innych stronach More sharing options...
oksal Napisano Sierpień 5, 2007 Zgłoś Share Napisano Sierpień 5, 2007 Jak dobrze rozumiem chcesz przykryc panelem CommandPanel punkt na mapie To najłatwiej Ci będzie to zrobić przez powtórne narysowanie CommandPanel. Wstaw do swojego kodu taką zmianę oScreen.ClearScreen(200,200,200,0); oGUI.Draw; ]K][X[[[]ZŁ67&VVF6ĆVBW6R7W'6%2 pozdrawiam oksal Link do komentarza Udostępnij na innych stronach More sharing options...
YokTu-Ki Napisano Sierpień 8, 2007 Autor Zgłoś Share Napisano Sierpień 8, 2007 Działa działa, dzięki wielkie. Jeszcze pokombinuję z tym coś jak będę miał czas. Pozdrawiam! Link do komentarza Udostępnij na innych stronach More sharing options...
Polecane posty
Zarchiwizowany
Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.