Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

R3sident3vil

Treue Seele

  • »R3sident3vil« ist der Autor dieses Themas

Beiträge: 177

Wohnort: 1010010

Beruf: Selbstständig

  • Private Nachricht senden

1

13.02.2007, 21:32

Einfache Funktionen und doch schwierige Situationen ;-)

Alles womit das angefangen hat fand im Tower of Darkness Thread statt. Also erstmal was bisher geschah:

Zitat von »"Konversation"«


@DragonFlame. Ich hätte da ein paar sehr interessante und wichtige Fragen an dich

1. Wie hast du das hingekriegt, dass auf der Fensterleiste nur "Tower of
Darkness steht? (Wenn ich immer Konsolen-Progs schreibe, dann steht oben immer der ganze Pfad dieser Anwendung. )

2. Wie genau machst du das, dass über die Konsole ein Sound in einem mitgetragenen Ordner abgespielt wird?

3. Und wie genau gibst du einzelnen Zeichen eine konstante Farbe?
_________________
Was für den einen Müll ist, kann für den Anderen sehr wertvoll sein.

Nach oben


grek40
Rear Admiral


Anmeldedatum: 27.12.2005
Beiträge: 562
Wohnort: Dresden
Verfasst am: 12. Februar 2007, 18:13 Titel:

--------------------------------------------------------------------------------

1. und 3. -> https://www.spieleprogrammierer.de/phpBB2/viewtopic.php?t=6968

2. sollte über eine recht einfache Win32 Funktion gehen^^ - vielleicht verrät dir Dragonflame es ja genau

Nach oben


IntelCore2Duo
Ensign


Anmeldedatum: 12.02.2007
Beiträge: 16
Wohnort: Hannover
Verfasst am: 12. Februar 2007, 19:35 Titel:

--------------------------------------------------------------------------------

grek40. Ich habe gerade festgestellt, dass der Link den du mir gegeben hast nicht ausreichend genau informativ war. Somit wurde meine Frage leider nicht beantwortet.
_________________
Was für den einen Müll ist, kann für den Anderen sehr wertvoll sein.

Nach oben


DragonFlame
Admiral


Anmeldedatum: 14.01.2006
Beiträge: 1194

Verfasst am: 12. Februar 2007, 19:56 Titel:

--------------------------------------------------------------------------------

1. Titel

Code (C++):

//Das hier ist die Unicode Version, ANSI A statt W
SetConsoleTitleW(L"Tower of Darkness");



2. Sound

Code (C++):

//Aus windows.h
sndPlaySoundW(L"Music\\Music.wav", SND_ASYNC | SND_LOOP);



3. Zeichen

1. Gewüschte Farbe setzen
2. Zeichen zeichnen
3. Wieder auf standardfarbe zurücksetzen

Hier poste ich keinen Code da es zu lang wäre so wie ich das gemacht habe. Außerdem steht's ja afaik im Link den grek40 gepostet hat.

@all: Ihr fragt euch sicher warum das alles mal wieder so lange dauert. Nein, es wird kein Riesen-Update geben, es dauert so lange weil ich mit dem Auslesen aus der Datei unzufrieden bin. Und bis meine Unicode Klasse endlich mal richtig funktioniert vergehen sicher noch Jahre-.-
Und ich code noch an anderen Sachen die mir zugegebenermaßen mehr Spaß machen.
_________________
Dragon Flame Studios

“Zwei Dinge sind unendlich: Das Universum und die menschliche Dummheit.
Aber beim Universum bin ich mir noch nicht ganz sicher.” - Albert Einstein

Nach oben


grek40
Rear Admiral


Anmeldedatum: 27.12.2005
Beiträge: 562
Wohnort: Dresden
Verfasst am: 12. Februar 2007, 20:18 Titel:

--------------------------------------------------------------------------------

Beschreib mal, was das Problem mit den Dateien ist - daran musst du dich sicher nicht Jahre lang aufhalten.

Nach oben


DragonFlame
Admiral


Anmeldedatum: 14.01.2006
Beiträge: 1194

Verfasst am: 12. Februar 2007, 20:41 Titel:

--------------------------------------------------------------------------------

Ach was, Jahre werden's schon nicht

Beschreiben kann ich das nicht, und will's auch nicht wirklich - lass' mich einfach machen und irgendwann kommt dabei dann was raus hoffe ich
_________________
Dragon Flame Studios

“Zwei Dinge sind unendlich: Das Universum und die menschliche Dummheit.
Aber beim Universum bin ich mir noch nicht ganz sicher.” - Albert Einstein

Nach oben


IntelCore2Duo
Ensign


Anmeldedatum: 12.02.2007
Beiträge: 16
Wohnort: Hannover
Verfasst am: 13. Februar 2007, 20:01 Titel:

--------------------------------------------------------------------------------

Vielen Dank! Titel funzt und Sound funzt, ABER der Sound wird nicht abgespielt, wenn ich den Pfad so eingebe wie du das gemacht hast, es kommen dabei immer Default-Signals. Der Sound wird erst abgespielt, wenn ich den kompletten Pfad eingebe. Der Zweck soll ja sein, dass ich es auf jedem Rechner abspielen kann, mit einem konstanten Pfad kann man das vergessen, deshalb sollte er variabel sein: Egal wo man den Ordner mit der Anwendung, den DLLs und dem Sound hinpackt, es soll immer abgespielt werden... Bist du sicher, dass das richtig ist, was du vorgegeben hast? Mein Programm kann das leider nicht bestätigen
_________________
Was für den einen Müll ist, kann für den Anderen sehr wertvoll sein.

Nach oben


Ghostrider
Rear Admiral


Anmeldedatum: 11.01.2006
Beiträge: 620
Wohnort: Nienhagen
Verfasst am: 13. Februar 2007, 20:30 Titel:

--------------------------------------------------------------------------------

was dragonflame dir geben hat ist kein kostanter pfad, der nur auf deinem pc geht.
es muss in dem ordner, indem die exe liegt, ein ordner "Music" sein. dort kommen dann die lieder rein. dann sollte es auf jedem pc laufen...
_________________
mfg
Ghostrider

| BlackSnake-Studios | Hier gibt es die aktuellen DLLs |

Mitglied der VGLWFSDEMEDSGNBK

Nach oben


IntelCore2Duo
Ensign


Anmeldedatum: 12.02.2007
Beiträge: 16
Wohnort: Hannover
Verfasst am: 13. Februar 2007, 20:38 Titel:

--------------------------------------------------------------------------------

MUSS er "Music" heißen? Ich habe das jetzt so ähnlich gemacht wie es DragenFlame vorgegeben hat, nur dass im Ordner wo meine EXE liegt ein Ordner ist, den ich "Data" genannt habe, und in Data ist dann der Ordner "Sound". In ihm ist der WAVESOUND von Löwenzahn drin. (Bei meinem Projekt ist sowas angemessen).

Also hab ich die Funktion so formuliert:

Code (C++):

sndPlaySoundW(L"Data\\Sound\\loewenzahn.wav", SND_ASYNC | SND_LOOP);



Wäre das sogesehen richtig? Denn so klappt es eben nicht
_________________
Was für den einen Müll ist, kann für den Anderen sehr wertvoll sein.

Nach oben


Fred
Captain


Anmeldedatum: 30.04.2006
Beiträge: 305
Wohnort: Hummeltal(Bayreuth)
Verfasst am: 13. Februar 2007, 21:11 Titel:

--------------------------------------------------------------------------------

Wie du deine Ordner nennst ist vollkommen egal.

Liefert er Fehlermeldungen? Oder spielt er ihn nicht ab?



Und dort wo Fred seine Antwort schrieb, von da gehts auch bitte weiter...
Kaum ist Linux wieder da, schon gehts meinem Rechner wunderbar, denn Linux ist die beste Medezin.

Olischewsky Arts

Fred

Supermoderator

Beiträge: 2 121

Beruf: Softwareentwickler

  • Private Nachricht senden

2

13.02.2007, 21:53

Aus der nicht-Beantwortung meiner Frage schließe ich, dass das Programm keine Fehlermeldungen ausspuckt( seltsam ich hätte einen typ. senden/nicht senden-Dialog erwartet)

R3sident3vil

Treue Seele

  • »R3sident3vil« ist der Autor dieses Themas

Beiträge: 177

Wohnort: 1010010

Beruf: Selbstständig

  • Private Nachricht senden

3

13.02.2007, 22:15

Nun das war nicht der Fall. Es verlief normal aber nicht so wie es sein sollte: Es kamen Default-Singnals. Kennste die "beep""beep""beep""beep""beep""beep""beep""beep""beep" etcpp.
Kaum ist Linux wieder da, schon gehts meinem Rechner wunderbar, denn Linux ist die beste Medezin.

Olischewsky Arts

R3sident3vil

Treue Seele

  • »R3sident3vil« ist der Autor dieses Themas

Beiträge: 177

Wohnort: 1010010

Beruf: Selbstständig

  • Private Nachricht senden

4

15.02.2007, 17:24

Neue Frage, neues Glück:

Mit den Farben klappt es jetzt. Ich habe diesen ganzen Hintergrundkram initialisiert, und kann mit der folgenden funktion zum bsp die farbe grün für den Konsolentext bestimmen:

C-/C++-Quelltext

1
Console::attribute(FOREGROUND_GREEN);


Leider funktionieren bei mir nur die fraben GREEN, RED und BLUE, alle andere wie z.b. YELLOW oder WHITE kennt der Kopiler nicht und schickt mir eine Fehlermeldung, dass dieses Wort undefiniert ist. Hmmmm :? . Wie kann ich noch mehr Farben deklarieren, damit mein Programm noch bunter wird, und wie macht man helle farben? ich hab da was mit 'LIGHT' gehört... danke für die Beanwortung dieser Frage im Voraus ;-)
Kaum ist Linux wieder da, schon gehts meinem Rechner wunderbar, denn Linux ist die beste Medezin.

Olischewsky Arts

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

5

15.02.2007, 17:56

Zitat von »"MSDN"«

An application can combine the foreground and background constants to achieve different colors. For example, the following combination results in bright cyan text on a blue background.

FOREGROUND_BLUE | FOREGROUND_GREEN | FOREGROUND_INTENSITY | BACKGROUND_BLUE

If no background constant is specified, the background is black, and if no foreground constant is specified, the text is black. For example, the following combination produces black text on a white background.

BACKGROUND_BLUE | BACKGROUND_GREEN | BACKGROUND_RED

R3sident3vil

Treue Seele

  • »R3sident3vil« ist der Autor dieses Themas

Beiträge: 177

Wohnort: 1010010

Beruf: Selbstständig

  • Private Nachricht senden

6

18.02.2007, 20:12

Next Question: Wie setzt man den Modulo-Operator(%) ein?

Bei der Berechnung einer Divisionsaufgabe:

ergebnis=zahl1/zahl2;

So ist z.B. " 31 : 10 " trotzdem 3 und nicht 3.1 ;-)

und es so aufzuschreiben: ergebnis=zahl1%zahl2; geht net, hab ich probiert. Also.... danke für die Beantwortung dieser Frage im Voraus ;-)
Kaum ist Linux wieder da, schon gehts meinem Rechner wunderbar, denn Linux ist die beste Medezin.

Olischewsky Arts

koschka

Community-Fossil

Beiträge: 2 862

Wohnort: Dresden

Beruf: Student

  • Private Nachricht senden

7

18.02.2007, 20:18

Wohl eher neue Frage neuer Thread, bitte absofort pro Frage ein Thread

Ansonsten würd ich gern mal wissen in welcher Sprache du programmierst. Bei C ist das Prozentzeichen der Modul.

31 % 10 = 1
31 / 10 = 3, insofern du das ergebnis in einer ganzzahl (z.B. int) speicherst
31 / 10 = 3.1, insofern du das ergebnis in einer Fließkommazahl (float) speicherst

R3sident3vil

Treue Seele

  • »R3sident3vil« ist der Autor dieses Themas

Beiträge: 177

Wohnort: 1010010

Beruf: Selbstständig

  • Private Nachricht senden

8

18.02.2007, 20:31

Ich bin C++ Programmierer ;-)

Mal gucken, ob es geht.
Kaum ist Linux wieder da, schon gehts meinem Rechner wunderbar, denn Linux ist die beste Medezin.

Olischewsky Arts

R3sident3vil

Treue Seele

  • »R3sident3vil« ist der Autor dieses Themas

Beiträge: 177

Wohnort: 1010010

Beruf: Selbstständig

  • Private Nachricht senden

9

18.02.2007, 20:33

Hey vielen vielen Dank! Aber sollte das nicht auch mit einem Modulo Operator gehen?
Kaum ist Linux wieder da, schon gehts meinem Rechner wunderbar, denn Linux ist die beste Medezin.

Olischewsky Arts

koschka

Community-Fossil

Beiträge: 2 862

Wohnort: Dresden

Beruf: Student

  • Private Nachricht senden

10

18.02.2007, 21:13

Was sollte mit dem Modulo Operator gehen? Division?

Nein, wie kommst du darauf? Mit dem Modulo Operator kann man sich sehr einfach endliche Körper basteln, lapidar ausgedrückt.

Beispiel: 35 mod 2 = 1 warum?

32-2-2-2-2- ..... - 2 = 3 - 2 = 1 von 1 kann man nicht mehr 2 abziehen! Normalerweise müsste man sowas in der dritten Klasse kennen, den da hat man sowas gerechtnet:

Quellcode

1
2
3
4
5
17/2 = 8 Rest 1

|_17/2_| = 8 wobei |_x_| die untere Gausklammer von x beschreibt (Werte abrunden)

17 % 2 = 1

man hat also nichts anderes gemacht als implizit modulo gerechnet, indem man den nichtteilbaren Rest hingeschrieben hat.

Division ohne Rest geht ja erst ab den rationalen Zahlen. Und Division beschreibt ja nicht den Rest, sondern wieviel etwas wieviel hineinpasst.
"Die 3 passt 2 mal in die 6 hinein" => 6/3 = 2

Mit Modulo kann man aber noch viel mehr machen, moderene Kodierungsverfahren wie RSA beruhen auf Modulo Restklassenringen.

Werbeanzeige