Spieler Farbe ändern
Übersicht

![]() |
maboxBetreff: Spieler Farbe ändern |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo, Ich habe in einem Spiel eine beliebige Anzahl von Spielern. jeder Spieler braucht eine Farbe. Gibt es eine Möglichkeit die Farben zuzuordnen ohne sie abzuspeichern? es sollten möglichst grelle Farben sein wie z.B.
255,0,0 0,255,0 0,0,255 255,255,0 0,255,255 255,255,255 0,0,0 |
||
Fujitsu-Siemens Laptop, 2Ghz Intel Core2Duo Prozessor, 2GB Ram, 120GB Festplatte, ATI Mobility Radeon X1400, Windows Vista Ultimate
www.mausoft.de.tl Dönerfresser Homepage |
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Dim (spielername,r,b,g) ? ![]() |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
timmeTheOnly |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Sorry ozzi,
das ist keine gute Idee, das braucht übel viel Speicher. So isses besser: Code: [AUSKLAPPEN] Dim Farbe(AnzahlDerSpieler,2) Dim Farbe(Spieler1,0) <-- Spieler1 | r Dim Farbe(Spieler1,1) <-- Spieler1 | g Dim Farbe(Spieler1,2) <-- Spieler1 | b Dim Farbe(Spieler2,0) <-- Spieler2 | r Dim Farbe(Spieler2,1) <-- Spieler2 | g Dim Farbe(Spieler2,2) <-- Spieler2 | b usw... |
||
![]() |
mabox |
![]() Antworten mit Zitat ![]() |
---|---|---|
warum schreibst du da nocht ein dim davor?
Zitat: Dim Farbe(Spieler1,0) <-- Spieler1 | r
|
||
Fujitsu-Siemens Laptop, 2Ghz Intel Core2Duo Prozessor, 2GB Ram, 120GB Festplatte, ATI Mobility Radeon X1400, Windows Vista Ultimate
www.mausoft.de.tl Dönerfresser Homepage |
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
timmeTheOnly hat Folgendes geschrieben: Sorry ozzi,
das ist keine gute Idee, das braucht übel viel Speicher. So isses besser: Code: [AUSKLAPPEN] Dim Farbe(AnzahlDerSpieler,2) Dim Farbe(Spieler1,0) <-- Spieler1 | r Dim Farbe(Spieler1,1) <-- Spieler1 | g Dim Farbe(Spieler1,2) <-- Spieler1 | b Dim Farbe(Spieler2,0) <-- Spieler2 | r Dim Farbe(Spieler2,1) <-- Spieler2 | g Dim Farbe(Spieler2,2) <-- Spieler2 | b usw... Das soll weniger Speicher brauchen ![]() ka @mabox Hää ? Funkts ? ![]() |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
@ozzi789: Welche werte sollen denn bei Dim(spielername,r,b,g) die Variablen r, g und b einnehmen? timmes Lösung ist schon einleuchtend, wenn man von der mehrfachen dimensionierung absieht. | ||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
![]() |
ToeB |
![]() Antworten mit Zitat ![]() |
---|---|---|
Genau, nur halt ohne Dim !
Code: [AUSKLAPPEN] player_anzahl = 3
Dim Farbe(player_anzahl,2) Farbe(1,0) = 255 ;ROT Farbe(1,1) = 0 ;GRÜN Farbe(1,2) = 0 ;BLAU Farbe(2,0) = 0 ;ROT Farbe(2,1) = 255 ;GRÜN Farbe(2,2) = 0 ;BLAU Farbe(3,0) = 0 ;ROT Farbe(3,1) = 0 ;GRÜN Farbe(3,2) = 255 ;BLAU For i = 1 to player_anzahl Color Farbe(i,0),Farbe(i,1),Farbe(i,2) Oval X(i),Y(i),20,20 Next So in Etwa... @ozzi789 : Was willst du denn mit Dim(spielernamen,r,g,b) zum ausdruck bringen ? mfg ToeB |
||
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt! |
![]() |
aMulSieger des Minimalist Compo 01/13 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn du nur Farben mit R/G/B-Werten von 0 oder 255 haben willst, kannst du die die Werte auch einfach aus den ersten drei Bits der Zahlen 0 bis 7 errechnen, in etwa so:
Code: [AUSKLAPPEN] Local nummer = Rand(0,7)
Local r, g, b r = (nummer And 1) * 255 g = ((nummer Shr 1) And 1) * 255 b = ((nummer Shr 2) And 1) * 255 Um den Code zu verstehen, muss man natürlich wissen, wie Computer zahlen speichern und wie man die Bit-Befehle anwendet/was diese bewirken. (Unter Bit-Befehle verstehe ich AND, OR, XOR, ~, SHR, SRL usw.) Ansonsten nimmst du halt die Lösung mit den Dim-Feldern, damit kannst du auch noch mehr als diese 8 Farben einfügen. Oh und man kann die Farben natürlich auch noch mit Data ![]() ![]() EDIT: Als Alternative kannst du auch folgende Funktion benutzen um HSL/HSV-Farben in RGB-Farben umzuwandeln. Damit kannst du ganz leicht bestimmen, wie grell die Farbe sein soll, schau dir dazu einfach mal Wikipedia an. Code: [AUSKLAPPEN] Function hsl2rgb(h#,s#,l#) ; takes hue(0 to 360), saturation (0 to 1.0) and luminance (0 to 1.0)
Local i,f#,p#,q#,t#,r#,g#,b# If s=0 r=l*255.0:g=l*255.0:b=l*255.0 Else h=h/60.0 i=Floor(h) f=h-i p=l*(1.0-s) q=l*(1.0-s*f) t=l*(1.0-s*(1.0-f)) Select i Case 0 r=l g=t b=p Case 1 r=q g=l b=p Case 2 r=p g=l b=t Case 3 r=p b=l g=q Case 4 r=t b=l g=p Default r=l g=p b=q End Select r=r*255 g=g*255 b=b*255 EndIf If r<0 Then r=0 If r>255 Then r=255 If g<0 Then g=0 If g>255 Then g=255 If b<0 Then b=0 If b>255 Then b=255 rgb=(r Shl 16)Or(g Shl 8)Or b Return rgb End Function (Funktion von bb.com) |
||
Panic Pong - ultimate action mashup of Pong and Breakout <= aktives Spiele-Projekt, Downloads mit vielen bunten Farben!
advASCIIdraw - the advanced ASCII art program <= aktives nicht-Spiele-Projekt, must-have für ASCII/roguelike/dungeon-crawler fans! Alter BB-Kram: ThroughTheAsteroidBelt - mit Quelltext! | RGB-Palette in 32²-Textur / Farbige Beleuchtung mit Dot3 | Stereoskopie in Blitz3D | Teleport-Animation Screensaver |
![]() |
mabox |
![]() Antworten mit Zitat ![]() |
---|---|---|
Vielen Dank! ich habs geschafft! | ||
Fujitsu-Siemens Laptop, 2Ghz Intel Core2Duo Prozessor, 2GB Ram, 120GB Festplatte, ATI Mobility Radeon X1400, Windows Vista Ultimate
www.mausoft.de.tl Dönerfresser Homepage |
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hab wohl etwas nicht ganz verstanden -.-
sry |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group