Lieber Besucher, herzlich willkommen bei: RPG Studio - Make your World real. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

Josey

Storyteller

  • »Josey« ist der Autor dieses Themas

Motto: "Was du nicht willst, das man dir tu', füge keinem And'ren zu!"

  • Nachricht senden

1

Dienstag, 20. Februar 2018, 16:34

Script berechnet falsch?

Iiiiiiich hab einen echt komischen Fehler Oo
Den kann ich mir GAR NICHT erklären.
In einem Script läuft diese Berechnung:

Ruby Quellcode

1
2
3
if u == -1
$feld_variables[u] = 0 # provisorium
end


Nicht fragen, das ist an der Stelle wichtig XD
Jedenfalls, stellt dieses Provisorium nicht nur die Variable u (die in diesem Moment ja -1 sein MUSS) um, sondern die Variable 24 gleich mit.

Ich habs so geprüft:

Ruby Quellcode

1
2
3
4
5
if u == -1
  p $feld_variables[u], u, $feld_variables[24] # 12, -1, 12
$feld_variables[u] = 0 # provisorium
p $feld_variables[u], u, $feld_variables[24] # 0, -1, 0
end

Die Zahlen im Comment sind die, die mir ausgespuckt werden.
Also man sieht, dass feld_variable 24 vor dem Provisorium noch 12 ist. Danach aber 0. Wenn ich das Provisorium auskommentiere, bleibt FV24 auf 12, also macht das Provisorium etwas, es muss irgendwie daran liegen. Aber ich weiß nicht wie. Oo
Zusätzlich scheint keine andere Variable davon betroffen zu sein. Nur die 24! Scheinbar immer die letzte Variable, die belegt ist. Wenn die 12 meine letzte Variable ist und alle anderen dahinter sowieso auf 0 stehen, wird die 12 auf 0 gestellt Oo
Aber wieso? Das Provisorium sollte doch nur U umstelle?! D:

Hat irgendjemand eine Idee, wie sowas sein kann?
  • Joseys Wuselei

    • Meine Story - Pausiert
      Lust auf Abenteuer?
      So richtig mit Selbstbestimmung?
      Und mit was Spannendem? Zum Spielen? Ohne Schokolade?
      "Eines, das mit dem leistungsstärksten Grafikchip der Welt läuft? Deiner Vorstellungskraft?"
      Hier die Antwort:
      Bild
      Bild
      Hier könnt ihr euren Lieblingschar wählen ;D
      Und hier findet ihr das Minigame, das ab und an den Würfel ersetzt.
    • Meine Arbeiten
      Einige Ressourcen, vor allem Baby-Tiere, aber auch alle Requests, die ich erfüllt habe.
      Bild

      Bild

      In unregelmäßigen Abständen fasse ich alles Neue, was so im Studio passiert ist, zusammen. -Pausiert-
      Bild
    • Meine Fähigkeiten
      Maker: :rmxp: XP
      :rainbow: Pixeln: :star: :star: :star: :star: :star-empty: :star-empty:
      :image: Mappen: :star: :star: :star: :star: :star: :star-empty:
      :wrench-screwdriver: Eventen: :star: :star: :star: :star: :star-empty: :star-empty:
      :puzzle: Scripten: :star: :star-half: :star-empty: :star-empty: :star-empty: :star-empty:
      :music: Komponieren: :star-half: :star-empty: :star-empty: :star-empty: :star-empty: :star-empty:
    • (Mein) Autismus
      Ich bin im autistischen Sprektrum-
      sollte ich mich komisch verhalten, oder unhöflich wirken
      (oder mich zu oft entschuldigen, unaufmerksam sein, unsicher wirken, zum zehnten Mal nachfragen, blablabla),
      ist das nicht beabsichtigt.


      Josey. Epicgarantie.
      Nehmt das bloß nicht ernst! D:
    • Meine Welt
      Mein Ehemann Kain! :heart_full: :*
      Freund und Helfer in der Not, immer da, steht er mir mit Rat und Tat zur Seite. Meine andere Hälfte! : D
      Er verdient einfach einen Platz ( :medal: ) in meiner Signatur! XD
      :heart-half:
    • Mein Support
      Der In-Game-Charset-Generator!
      Erstelle Random-NPCs mit Charsetteilen!

      Diese Spiele finde ich toll und brauchen viel mehr Aufmerksamkeit!
      Bastelt mal Banner! : D

    • Meine beendeten Contests
      [Pixelcontest] Rund um den Kürbis
      Bild
      Abstimmung
      Siegerehrung

      Das Wunder der Berge
      Bild
      Abstimmung
      Siegerehrung
    • Meine Contests
      Bild Ein Schreibcontest in Arbeit! : D Bild
  • Joseys Spiele

    • Endless Ending
      :rmxp: Endless Ending
      (Arbeitstitel, "ernstes Projekt")

      Bild

      Eine Reise durch die Wüste.
      Sieben mächtige Gegenstände.
      Unendlich viele Aufgaben.

      Und die Götter haben die Würfel.
    • Scripted Desaster
      :rmxp: Scripted Desaster
      ("nicht ganz so ernstes Projekt")

      Ein verfressener Idiot und ein sarkastischer Workaholic treffen in einem dunklen Wald auf einen weißes Kaninchen...
      Ein Auftragskiller jagt einem Meisterdieb hinterher, wobei nicht ersichtlich ist, wer eigentlich wen jagt...
      Und eine "Kristallhöhle", sowie einen "Wald ohne Wiederkehr" gibts auch.

      Das bedeutet doch Spaß...
    • Pokémon EV
      :rmxp: Pokemon EV
      ("Zeitvertreib nebenbei - Kreatief-Helfer")

      Ist nur ein Pokemonspiel mit üblicher Story und nicht so üblicher Story.
      Ist inzwischen alles schonmal dagewesen. XD
    • Lost Island
      :rmxp: Harvest Moon - Lost Island
      (Arbeitstitel, "Eventtechnik-Projekt")

      Ist momentan mein Hauptprojekt, weil bei EE die Scripts einfach fehlen :<
      Das Spiel ist ein Harvest Moon Abklatsch. XD
      Felder funktionieren, Tiere auch, Grafiken sehen schon gut aus, Maps sind fast fertig. Man kann in die Miene, man kann einkaufen. Auf dem Papier ist alles schon durchgeplant, einiges muss noch umgesetzt werden.
  • Joseys Fortschritt

    • Endless Ending
      :hourglass: Story: 60%
      :foaf: Charas: 20%
      :leaf: Maps: 01%
      :ruby: Zeichnungen: 05%
      :color: Grafiken: 30%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      ...ist nicht viel, huh? ^^°
    • Scripted Desaster
      :hourglass: Story: 10%
      :foaf: Charas: 60%
      :leaf: Maps: 30%
      :ruby: Zeichnungen: 01%
      :color: Grafiken: 60%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      Gut Ding...
    • Pokemon EV
      :hourglass: Story: 60%
      :foaf: Charas: 10%
      :leaf: Maps: 00%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 80%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 70%
      Nicht ernstnehmen XD Das mache ich nur, wenn woanders nix mehr geht...
    • Lost Island
      :hourglass: Story: 100%
      :foaf: Charas: 10%
      :leaf: Maps: 90%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 60%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 00%
      Das macht richtig Spaß XD
  • Huiii

    Bitte klicken Sie weiter. Hier gibt es nichts zu sehen. Nichts. Hören Sie? Nichts.

RedLink

Landsknecht

Motto: Faulheit ist Relativ

  • Nachricht senden

2

Dienstag, 20. Februar 2018, 18:56

Ich glaube da es keinen Array index von -1 gibt wird der maximale Stelle genutzt da der Zähler dann anstatt -1 auf den höchsten Index springt.

Ruby Quellcode

1
2
3
$feld_variables = [0,1,2,3,4,5,6,7,8,9,10,11,12]
 u = -1
 p $feld_variables[u], u, $feld_variables[12]


Jetzt füge das einfach mal in die Scene Main oberhalb des Scene Title Eintrags und schau dir das Ergebnis an.
  • Scripter

    Für den MV
  • Mitmacher

    nirgendswo

Josey

Storyteller

  • »Josey« ist der Autor dieses Themas

Motto: "Was du nicht willst, das man dir tu', füge keinem And'ren zu!"

  • Nachricht senden

3

Dienstag, 20. Februar 2018, 19:18

Ja, da kommt 12, -1, 12 o.o
Danke für den Hinweis! :D
Also ist es wirklich so, dass die Variable -1 quasi dasselbe ist, wie jeweils die letzte Variable.
Ich müsste also verhindern, dass -1 überhaupt erst abgefragt wird :/
Müsste möglich sein, wenn ich alle Zahlen der Feld-IDs um 2 verschiebe, dann dürfte ich nicht mehr unter 0 kommen.
  • Joseys Wuselei

    • Meine Story - Pausiert
      Lust auf Abenteuer?
      So richtig mit Selbstbestimmung?
      Und mit was Spannendem? Zum Spielen? Ohne Schokolade?
      "Eines, das mit dem leistungsstärksten Grafikchip der Welt läuft? Deiner Vorstellungskraft?"
      Hier die Antwort:
      Bild
      Bild
      Hier könnt ihr euren Lieblingschar wählen ;D
      Und hier findet ihr das Minigame, das ab und an den Würfel ersetzt.
    • Meine Arbeiten
      Einige Ressourcen, vor allem Baby-Tiere, aber auch alle Requests, die ich erfüllt habe.
      Bild

      Bild

      In unregelmäßigen Abständen fasse ich alles Neue, was so im Studio passiert ist, zusammen. -Pausiert-
      Bild
    • Meine Fähigkeiten
      Maker: :rmxp: XP
      :rainbow: Pixeln: :star: :star: :star: :star: :star-empty: :star-empty:
      :image: Mappen: :star: :star: :star: :star: :star: :star-empty:
      :wrench-screwdriver: Eventen: :star: :star: :star: :star: :star-empty: :star-empty:
      :puzzle: Scripten: :star: :star-half: :star-empty: :star-empty: :star-empty: :star-empty:
      :music: Komponieren: :star-half: :star-empty: :star-empty: :star-empty: :star-empty: :star-empty:
    • (Mein) Autismus
      Ich bin im autistischen Sprektrum-
      sollte ich mich komisch verhalten, oder unhöflich wirken
      (oder mich zu oft entschuldigen, unaufmerksam sein, unsicher wirken, zum zehnten Mal nachfragen, blablabla),
      ist das nicht beabsichtigt.


      Josey. Epicgarantie.
      Nehmt das bloß nicht ernst! D:
    • Meine Welt
      Mein Ehemann Kain! :heart_full: :*
      Freund und Helfer in der Not, immer da, steht er mir mit Rat und Tat zur Seite. Meine andere Hälfte! : D
      Er verdient einfach einen Platz ( :medal: ) in meiner Signatur! XD
      :heart-half:
    • Mein Support
      Der In-Game-Charset-Generator!
      Erstelle Random-NPCs mit Charsetteilen!

      Diese Spiele finde ich toll und brauchen viel mehr Aufmerksamkeit!
      Bastelt mal Banner! : D

    • Meine beendeten Contests
      [Pixelcontest] Rund um den Kürbis
      Bild
      Abstimmung
      Siegerehrung

      Das Wunder der Berge
      Bild
      Abstimmung
      Siegerehrung
    • Meine Contests
      Bild Ein Schreibcontest in Arbeit! : D Bild
  • Joseys Spiele

    • Endless Ending
      :rmxp: Endless Ending
      (Arbeitstitel, "ernstes Projekt")

      Bild

      Eine Reise durch die Wüste.
      Sieben mächtige Gegenstände.
      Unendlich viele Aufgaben.

      Und die Götter haben die Würfel.
    • Scripted Desaster
      :rmxp: Scripted Desaster
      ("nicht ganz so ernstes Projekt")

      Ein verfressener Idiot und ein sarkastischer Workaholic treffen in einem dunklen Wald auf einen weißes Kaninchen...
      Ein Auftragskiller jagt einem Meisterdieb hinterher, wobei nicht ersichtlich ist, wer eigentlich wen jagt...
      Und eine "Kristallhöhle", sowie einen "Wald ohne Wiederkehr" gibts auch.

      Das bedeutet doch Spaß...
    • Pokémon EV
      :rmxp: Pokemon EV
      ("Zeitvertreib nebenbei - Kreatief-Helfer")

      Ist nur ein Pokemonspiel mit üblicher Story und nicht so üblicher Story.
      Ist inzwischen alles schonmal dagewesen. XD
    • Lost Island
      :rmxp: Harvest Moon - Lost Island
      (Arbeitstitel, "Eventtechnik-Projekt")

      Ist momentan mein Hauptprojekt, weil bei EE die Scripts einfach fehlen :<
      Das Spiel ist ein Harvest Moon Abklatsch. XD
      Felder funktionieren, Tiere auch, Grafiken sehen schon gut aus, Maps sind fast fertig. Man kann in die Miene, man kann einkaufen. Auf dem Papier ist alles schon durchgeplant, einiges muss noch umgesetzt werden.
  • Joseys Fortschritt

    • Endless Ending
      :hourglass: Story: 60%
      :foaf: Charas: 20%
      :leaf: Maps: 01%
      :ruby: Zeichnungen: 05%
      :color: Grafiken: 30%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      ...ist nicht viel, huh? ^^°
    • Scripted Desaster
      :hourglass: Story: 10%
      :foaf: Charas: 60%
      :leaf: Maps: 30%
      :ruby: Zeichnungen: 01%
      :color: Grafiken: 60%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      Gut Ding...
    • Pokemon EV
      :hourglass: Story: 60%
      :foaf: Charas: 10%
      :leaf: Maps: 00%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 80%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 70%
      Nicht ernstnehmen XD Das mache ich nur, wenn woanders nix mehr geht...
    • Lost Island
      :hourglass: Story: 100%
      :foaf: Charas: 10%
      :leaf: Maps: 90%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 60%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 00%
      Das macht richtig Spaß XD
  • Huiii

    Bitte klicken Sie weiter. Hier gibt es nichts zu sehen. Nichts. Hören Sie? Nichts.

Josey

Storyteller

  • »Josey« ist der Autor dieses Themas

Motto: "Was du nicht willst, das man dir tu', füge keinem And'ren zu!"

  • Nachricht senden

4

Sonntag, 25. Februar 2018, 23:34

Andere falschberechnung XD
Ich hab das hier:

Ruby Quellcode

1
2
3
4
5
6
      	case $game_player.direction
        	when 2 then feld_vor_spieler_y += 1 & feld_vor_spieler_x += 1 # unten+links
        	when 4 then feld_vor_spieler_x -= 1 & feld_vor_spieler_y += 1 # links+links
        	when 6 then feld_vor_spieler_x += 1 & feld_vor_spieler_y -= 1 # rechts+links
        	when 8 then feld_vor_spieler_y -= 1  & feld_vor_spieler_x -= 1 # oben+links
      	end

Auf der einen Map funktioniert es, auf der anderen (selbes Tileset) nicht. Dort wird dann immer die Berechnung vor dem & ignoriert. Oo
Kann es dafür einen Grund geben?

Bsp: x = 8, y = 3
Case 4 (Player schaut nach links), jetzt müsste x = 7 und y = 4 sein, heraus kommen aber 8 und 4.


Wenn ich es so schreibe:

Ruby Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
      	case $game_player.direction
        	when 2 then feld_vor_spieler_y += 1  # unten+links
        	when 4 then feld_vor_spieler_x -= 1 # links+links
        	when 6 then feld_vor_spieler_x += 1 # rechts+links
        	when 8 then feld_vor_spieler_y -= 1  # oben+links
      	end
      	case $game_player.direction
        	when 2 then feld_vor_spieler_x += 1 # unten+links
        	when 4 then feld_vor_spieler_y += 1# links+links
        	when 6 then feld_vor_spieler_y -= 1# rechts+links
        	when 8 then feld_vor_spieler_x -= 1 # oben+links
      	end

klappt es.

Was hab ich falsch gemacht?
  • Joseys Wuselei

    • Meine Story - Pausiert
      Lust auf Abenteuer?
      So richtig mit Selbstbestimmung?
      Und mit was Spannendem? Zum Spielen? Ohne Schokolade?
      "Eines, das mit dem leistungsstärksten Grafikchip der Welt läuft? Deiner Vorstellungskraft?"
      Hier die Antwort:
      Bild
      Bild
      Hier könnt ihr euren Lieblingschar wählen ;D
      Und hier findet ihr das Minigame, das ab und an den Würfel ersetzt.
    • Meine Arbeiten
      Einige Ressourcen, vor allem Baby-Tiere, aber auch alle Requests, die ich erfüllt habe.
      Bild

      Bild

      In unregelmäßigen Abständen fasse ich alles Neue, was so im Studio passiert ist, zusammen. -Pausiert-
      Bild
    • Meine Fähigkeiten
      Maker: :rmxp: XP
      :rainbow: Pixeln: :star: :star: :star: :star: :star-empty: :star-empty:
      :image: Mappen: :star: :star: :star: :star: :star: :star-empty:
      :wrench-screwdriver: Eventen: :star: :star: :star: :star: :star-empty: :star-empty:
      :puzzle: Scripten: :star: :star-half: :star-empty: :star-empty: :star-empty: :star-empty:
      :music: Komponieren: :star-half: :star-empty: :star-empty: :star-empty: :star-empty: :star-empty:
    • (Mein) Autismus
      Ich bin im autistischen Sprektrum-
      sollte ich mich komisch verhalten, oder unhöflich wirken
      (oder mich zu oft entschuldigen, unaufmerksam sein, unsicher wirken, zum zehnten Mal nachfragen, blablabla),
      ist das nicht beabsichtigt.


      Josey. Epicgarantie.
      Nehmt das bloß nicht ernst! D:
    • Meine Welt
      Mein Ehemann Kain! :heart_full: :*
      Freund und Helfer in der Not, immer da, steht er mir mit Rat und Tat zur Seite. Meine andere Hälfte! : D
      Er verdient einfach einen Platz ( :medal: ) in meiner Signatur! XD
      :heart-half:
    • Mein Support
      Der In-Game-Charset-Generator!
      Erstelle Random-NPCs mit Charsetteilen!

      Diese Spiele finde ich toll und brauchen viel mehr Aufmerksamkeit!
      Bastelt mal Banner! : D

    • Meine beendeten Contests
      [Pixelcontest] Rund um den Kürbis
      Bild
      Abstimmung
      Siegerehrung

      Das Wunder der Berge
      Bild
      Abstimmung
      Siegerehrung
    • Meine Contests
      Bild Ein Schreibcontest in Arbeit! : D Bild
  • Joseys Spiele

    • Endless Ending
      :rmxp: Endless Ending
      (Arbeitstitel, "ernstes Projekt")

      Bild

      Eine Reise durch die Wüste.
      Sieben mächtige Gegenstände.
      Unendlich viele Aufgaben.

      Und die Götter haben die Würfel.
    • Scripted Desaster
      :rmxp: Scripted Desaster
      ("nicht ganz so ernstes Projekt")

      Ein verfressener Idiot und ein sarkastischer Workaholic treffen in einem dunklen Wald auf einen weißes Kaninchen...
      Ein Auftragskiller jagt einem Meisterdieb hinterher, wobei nicht ersichtlich ist, wer eigentlich wen jagt...
      Und eine "Kristallhöhle", sowie einen "Wald ohne Wiederkehr" gibts auch.

      Das bedeutet doch Spaß...
    • Pokémon EV
      :rmxp: Pokemon EV
      ("Zeitvertreib nebenbei - Kreatief-Helfer")

      Ist nur ein Pokemonspiel mit üblicher Story und nicht so üblicher Story.
      Ist inzwischen alles schonmal dagewesen. XD
    • Lost Island
      :rmxp: Harvest Moon - Lost Island
      (Arbeitstitel, "Eventtechnik-Projekt")

      Ist momentan mein Hauptprojekt, weil bei EE die Scripts einfach fehlen :<
      Das Spiel ist ein Harvest Moon Abklatsch. XD
      Felder funktionieren, Tiere auch, Grafiken sehen schon gut aus, Maps sind fast fertig. Man kann in die Miene, man kann einkaufen. Auf dem Papier ist alles schon durchgeplant, einiges muss noch umgesetzt werden.
  • Joseys Fortschritt

    • Endless Ending
      :hourglass: Story: 60%
      :foaf: Charas: 20%
      :leaf: Maps: 01%
      :ruby: Zeichnungen: 05%
      :color: Grafiken: 30%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      ...ist nicht viel, huh? ^^°
    • Scripted Desaster
      :hourglass: Story: 10%
      :foaf: Charas: 60%
      :leaf: Maps: 30%
      :ruby: Zeichnungen: 01%
      :color: Grafiken: 60%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      Gut Ding...
    • Pokemon EV
      :hourglass: Story: 60%
      :foaf: Charas: 10%
      :leaf: Maps: 00%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 80%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 70%
      Nicht ernstnehmen XD Das mache ich nur, wenn woanders nix mehr geht...
    • Lost Island
      :hourglass: Story: 100%
      :foaf: Charas: 10%
      :leaf: Maps: 90%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 60%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 00%
      Das macht richtig Spaß XD
  • Huiii

    Bitte klicken Sie weiter. Hier gibt es nichts zu sehen. Nichts. Hören Sie? Nichts.

5

Montag, 26. Februar 2018, 17:15

Es klappt vermutlich immer dann, wenn die rechte Operation nach dem += oder -= eine ungerade Zahl ergibt.

Bin gerade auf dem Sprung, deswegen nur knapp:

Gibt es einen Grund, warum Du es nicht so schreibst?

Ruby Quellcode

1
2
3
4
5
6
7
8
9
10
11
    case $game_player.direction
    when 2 # unten+links
      feld_vor_spieler_y += 1
      feld_vor_spieler_x += 1
    when 4 # links+links
      feld_vor_spieler_x -= 1
      feld_vor_spieler_y += 1
    when 6 # rechts+links
      feld_vor_spieler_x += 1
      feld_vor_spieler_y -= 1
    end


Ansonsten sollte es auch funktionieren, wenn Du das Ampersand durch ein Semikolon ersetzt.

Ruby Quellcode

1
when 2 then feld_vor_spieler_y += 1; feld_vor_spieler_x += 1 # unten+links


Die Erklärung ist, wie das Ampersand funktioniert in Ruby. Vielleicht meintest Du auch "&&" statt "&". Das einfache "&" ist für Zahlen eine bitweise Verknüpfung. Mehr dazu dann später, wenn ich mehr Zeit habe.

Josey

Storyteller

  • »Josey« ist der Autor dieses Themas

Motto: "Was du nicht willst, das man dir tu', füge keinem And'ren zu!"

  • Nachricht senden

6

Montag, 26. Februar 2018, 17:59

Zitat

Es klappt vermutlich immer dann, wenn die rechte Operation nach dem += oder -= eine ungerade Zahl ergibt.
[...]
Die Erklärung ist, wie das Ampersand funktioniert in Ruby. Vielleicht meintest Du auch "&&" statt "&". Das einfache "&" ist für Zahlen eine bitweise Verknüpfung. Mehr dazu dann später, wenn ich mehr Zeit habe.

Darüber würde ich mich sehr freuen :)
Das interessiert mich aber jetzt echt XD

Zitat

Gibt es einen Grund, warum Du es nicht so schreibst?

Nein- so hatte ich es damals bekommen, als ich nach der Möglichkeit gefragt habe :)
Hab nie drüber nachgedacht, ob es anders besser wäre, oder ob Fehler möglich sind.

Ich habs jetzt so wie in deinem oberen Beispiel gemacht und es klappt wunderbar! :D
Aber ansonsten (bei nur einer Rechnung, ohne &) stört das "when then" nicht, oder? :)
Danke! XD
  • Joseys Wuselei

    • Meine Story - Pausiert
      Lust auf Abenteuer?
      So richtig mit Selbstbestimmung?
      Und mit was Spannendem? Zum Spielen? Ohne Schokolade?
      "Eines, das mit dem leistungsstärksten Grafikchip der Welt läuft? Deiner Vorstellungskraft?"
      Hier die Antwort:
      Bild
      Bild
      Hier könnt ihr euren Lieblingschar wählen ;D
      Und hier findet ihr das Minigame, das ab und an den Würfel ersetzt.
    • Meine Arbeiten
      Einige Ressourcen, vor allem Baby-Tiere, aber auch alle Requests, die ich erfüllt habe.
      Bild

      Bild

      In unregelmäßigen Abständen fasse ich alles Neue, was so im Studio passiert ist, zusammen. -Pausiert-
      Bild
    • Meine Fähigkeiten
      Maker: :rmxp: XP
      :rainbow: Pixeln: :star: :star: :star: :star: :star-empty: :star-empty:
      :image: Mappen: :star: :star: :star: :star: :star: :star-empty:
      :wrench-screwdriver: Eventen: :star: :star: :star: :star: :star-empty: :star-empty:
      :puzzle: Scripten: :star: :star-half: :star-empty: :star-empty: :star-empty: :star-empty:
      :music: Komponieren: :star-half: :star-empty: :star-empty: :star-empty: :star-empty: :star-empty:
    • (Mein) Autismus
      Ich bin im autistischen Sprektrum-
      sollte ich mich komisch verhalten, oder unhöflich wirken
      (oder mich zu oft entschuldigen, unaufmerksam sein, unsicher wirken, zum zehnten Mal nachfragen, blablabla),
      ist das nicht beabsichtigt.


      Josey. Epicgarantie.
      Nehmt das bloß nicht ernst! D:
    • Meine Welt
      Mein Ehemann Kain! :heart_full: :*
      Freund und Helfer in der Not, immer da, steht er mir mit Rat und Tat zur Seite. Meine andere Hälfte! : D
      Er verdient einfach einen Platz ( :medal: ) in meiner Signatur! XD
      :heart-half:
    • Mein Support
      Der In-Game-Charset-Generator!
      Erstelle Random-NPCs mit Charsetteilen!

      Diese Spiele finde ich toll und brauchen viel mehr Aufmerksamkeit!
      Bastelt mal Banner! : D

    • Meine beendeten Contests
      [Pixelcontest] Rund um den Kürbis
      Bild
      Abstimmung
      Siegerehrung

      Das Wunder der Berge
      Bild
      Abstimmung
      Siegerehrung
    • Meine Contests
      Bild Ein Schreibcontest in Arbeit! : D Bild
  • Joseys Spiele

    • Endless Ending
      :rmxp: Endless Ending
      (Arbeitstitel, "ernstes Projekt")

      Bild

      Eine Reise durch die Wüste.
      Sieben mächtige Gegenstände.
      Unendlich viele Aufgaben.

      Und die Götter haben die Würfel.
    • Scripted Desaster
      :rmxp: Scripted Desaster
      ("nicht ganz so ernstes Projekt")

      Ein verfressener Idiot und ein sarkastischer Workaholic treffen in einem dunklen Wald auf einen weißes Kaninchen...
      Ein Auftragskiller jagt einem Meisterdieb hinterher, wobei nicht ersichtlich ist, wer eigentlich wen jagt...
      Und eine "Kristallhöhle", sowie einen "Wald ohne Wiederkehr" gibts auch.

      Das bedeutet doch Spaß...
    • Pokémon EV
      :rmxp: Pokemon EV
      ("Zeitvertreib nebenbei - Kreatief-Helfer")

      Ist nur ein Pokemonspiel mit üblicher Story und nicht so üblicher Story.
      Ist inzwischen alles schonmal dagewesen. XD
    • Lost Island
      :rmxp: Harvest Moon - Lost Island
      (Arbeitstitel, "Eventtechnik-Projekt")

      Ist momentan mein Hauptprojekt, weil bei EE die Scripts einfach fehlen :<
      Das Spiel ist ein Harvest Moon Abklatsch. XD
      Felder funktionieren, Tiere auch, Grafiken sehen schon gut aus, Maps sind fast fertig. Man kann in die Miene, man kann einkaufen. Auf dem Papier ist alles schon durchgeplant, einiges muss noch umgesetzt werden.
  • Joseys Fortschritt

    • Endless Ending
      :hourglass: Story: 60%
      :foaf: Charas: 20%
      :leaf: Maps: 01%
      :ruby: Zeichnungen: 05%
      :color: Grafiken: 30%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      ...ist nicht viel, huh? ^^°
    • Scripted Desaster
      :hourglass: Story: 10%
      :foaf: Charas: 60%
      :leaf: Maps: 30%
      :ruby: Zeichnungen: 01%
      :color: Grafiken: 60%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      Gut Ding...
    • Pokemon EV
      :hourglass: Story: 60%
      :foaf: Charas: 10%
      :leaf: Maps: 00%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 80%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 70%
      Nicht ernstnehmen XD Das mache ich nur, wenn woanders nix mehr geht...
    • Lost Island
      :hourglass: Story: 100%
      :foaf: Charas: 10%
      :leaf: Maps: 90%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 60%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 00%
      Das macht richtig Spaß XD
  • Huiii

    Bitte klicken Sie weiter. Hier gibt es nichts zu sehen. Nichts. Hören Sie? Nichts.

7

Montag, 26. Februar 2018, 20:21

Zitat

Aber ansonsten (bei nur einer Rechnung, ohne &) stört das "when then" nicht, oder? :)

Nein, das ist kein Problem. Das Problem war, wie die zwei Zuweisungen für feld_vor_spieler_ verknüpft waren.

Zitat

Darüber würde ich mich sehr freuen :)
Das interessiert mich aber jetzt echt XD

Schauen wir uns mal die folgende Rechenaufgabe an.
3 + 7 * 2 = ?

Vermutlich ist keiner überrascht, dass das Ergebnis nicht 20, sondern 17 ist. Das liegt daran, dass jeder der die Grundschule abschließt weiß, dass Punktrechnung vor Strichrechnung ausgeführt wird. Die Rechnung kann also so geklammert werden:
3 + (7 * 2) = ?


Damit man bei Rechnungen mit mehr als zwei Gliedern nicht alles voller Klammern schreiben muss hat man sich in der Mathematik einmal auf die Reihenfolge von Operatoren geeinigt. Das ist einfach eine Konvention: Wenn Klammern weggelassen wurden, ist gemeint, dass man zuerst die Punktrechnung ausführen soll.

Die Mathematiker haben aber nicht in eurem Rechenbuch aufgehört, sondern sich irgendwann auch Programmiersprachen ausgedacht für ihre Rechnungen. In den Programmiersprachen gibt es auch Operatoren:

Ruby Quellcode

1
print( 3 + 7 * 2 )

Auch hier ist die Reihenfolge festgelegt und entspricht der mathematischen Reihenfolge.
Aber in Ruby gibt es noch mehr Operatoren. Auch für diese musste man sich eine Reihenfolge überlegen. Tatsächlich gibt es in Ruby sogar ziemlich viele Operatoren, deswegen beschränke ich mich jetzt nur auf die, die Du benutzt hast.

Es geht um folgende Operation:

Ruby Quellcode

1
feld_vor_spieler_y += 1 & feld_vor_spieler_x += 1

Es gibt hierbei zwei Arten von Operatoren.
Einen Zuweisungsoperator: " += " und
ein bit-weises Und: " & "
Nirgendswo stehen Klammern, um die Reihenfolge explizit zu machen, also überlegt der Computer welche Reihenfolge sinnvoll ist.

Nach den Regeln ist ein bit-weises Und noch vor einer Zuweisung auszuführen. Also müsste der Computer so klammern:

Ruby Quellcode

1
feld_vor_spieler_y += (1 & feld_vor_spieler_x) += 1
Allerdings ist

Ruby Quellcode

1
(1 & feld_vor_spieler_x) += 1
keine korrekte Syntax, der Computer denkt sich also okay die Programmierin hat sich was anders dabei gedacht die Zuweisung gehört noch dazu und klammert schließlich so:

Ruby Quellcode

1
feld_vor_spieler_y += (1 & (feld_vor_spieler_x += 1))


Das ist schonmal unschön, weil eigentlich wollten wir ja diese Klammerung:

Ruby Quellcode

1
(feld_vor_spieler_y += 1) & (feld_vor_spieler_x += 1)
Denn jetzt wird feld_vor_spieler_y das Ergebnis der bit-weisen-Verknüpfung zugewiesen.

Aber was genau tut eigentlich das &? Das ganze hat auch mal =Kai= erklärt, das ist aber ein sehr langer Text deswegen hier in aller Kürze: Der &-Operator hier ist für Zahlen definiert und betrachtet Zahlen in ihrer binären Darstellung. Eine Zwei wäre binär 10 (Eins-Null), eine Drei wäre binär 11 (Eins-Eins) eine Vier wäre binär 100 (Eins-Nulll-Null) und eine Zehn wäre binär 1010 (Eins-Null-Eins-Null).
Der Operator guckt für zwei Zahlen an welchen Stellen bei beiden Zahlen Einsen stehen und die übernimmt er dann ins Ergebnis. Schauen wir uns mal die Operation 6&2 an.

Quellcode

1
2
3
4
  Sechs                 110
& Zehn       <->     & 1010
  -----               -----
= Zwei               =   10


Wofür man sowas braucht hat =Kai= oben ja gezeigt. Wenn man total low-level etwas umsetzen möchte. Normalerweise arbeitet man aber in Ruby high-level und schert sich nicht um Bits und Bytes.

Fazit: Der Und-Operator ist in Ruby nicht das, was er zu seien scheint. Der Computer überlegt sich, was Du meinen könntest, wenn Du Sachen nicht explizit machst. Letzteres ist garnicht schlimm. Es ist das was Ruby ausmacht, das man gemütlich seinen Code schreibt und der Computer schon was gutes daraus machen wird.

Josey

Storyteller

  • »Josey« ist der Autor dieses Themas

Motto: "Was du nicht willst, das man dir tu', füge keinem And'ren zu!"

  • Nachricht senden

8

Montag, 26. Februar 2018, 23:38

Okay- & bedeutet nicht immer "und". & zerlegt Zahlen in ihren Binärcode und vergleicht sie miteinander?

Aber innerhalb von if-Abfragen, wenn ich Variablen und Switche nachfrage, funktioniert er bisher immer gut.
& ist also nur dann nicht "und", wenn da ne Berechnung vorher liegt?

Also
if $game_switches[1] == true && $game_variables[1] >= 2
end
Das klappt immer, da brauche ich nichts zu beachten?
Dasselbe gilt für || ?

Ich hatte tatsächlich geschaut, ob die Berechnung mit && klappt, tat sie aber nicht XD
  • Joseys Wuselei

    • Meine Story - Pausiert
      Lust auf Abenteuer?
      So richtig mit Selbstbestimmung?
      Und mit was Spannendem? Zum Spielen? Ohne Schokolade?
      "Eines, das mit dem leistungsstärksten Grafikchip der Welt läuft? Deiner Vorstellungskraft?"
      Hier die Antwort:
      Bild
      Bild
      Hier könnt ihr euren Lieblingschar wählen ;D
      Und hier findet ihr das Minigame, das ab und an den Würfel ersetzt.
    • Meine Arbeiten
      Einige Ressourcen, vor allem Baby-Tiere, aber auch alle Requests, die ich erfüllt habe.
      Bild

      Bild

      In unregelmäßigen Abständen fasse ich alles Neue, was so im Studio passiert ist, zusammen. -Pausiert-
      Bild
    • Meine Fähigkeiten
      Maker: :rmxp: XP
      :rainbow: Pixeln: :star: :star: :star: :star: :star-empty: :star-empty:
      :image: Mappen: :star: :star: :star: :star: :star: :star-empty:
      :wrench-screwdriver: Eventen: :star: :star: :star: :star: :star-empty: :star-empty:
      :puzzle: Scripten: :star: :star-half: :star-empty: :star-empty: :star-empty: :star-empty:
      :music: Komponieren: :star-half: :star-empty: :star-empty: :star-empty: :star-empty: :star-empty:
    • (Mein) Autismus
      Ich bin im autistischen Sprektrum-
      sollte ich mich komisch verhalten, oder unhöflich wirken
      (oder mich zu oft entschuldigen, unaufmerksam sein, unsicher wirken, zum zehnten Mal nachfragen, blablabla),
      ist das nicht beabsichtigt.


      Josey. Epicgarantie.
      Nehmt das bloß nicht ernst! D:
    • Meine Welt
      Mein Ehemann Kain! :heart_full: :*
      Freund und Helfer in der Not, immer da, steht er mir mit Rat und Tat zur Seite. Meine andere Hälfte! : D
      Er verdient einfach einen Platz ( :medal: ) in meiner Signatur! XD
      :heart-half:
    • Mein Support
      Der In-Game-Charset-Generator!
      Erstelle Random-NPCs mit Charsetteilen!

      Diese Spiele finde ich toll und brauchen viel mehr Aufmerksamkeit!
      Bastelt mal Banner! : D

    • Meine beendeten Contests
      [Pixelcontest] Rund um den Kürbis
      Bild
      Abstimmung
      Siegerehrung

      Das Wunder der Berge
      Bild
      Abstimmung
      Siegerehrung
    • Meine Contests
      Bild Ein Schreibcontest in Arbeit! : D Bild
  • Joseys Spiele

    • Endless Ending
      :rmxp: Endless Ending
      (Arbeitstitel, "ernstes Projekt")

      Bild

      Eine Reise durch die Wüste.
      Sieben mächtige Gegenstände.
      Unendlich viele Aufgaben.

      Und die Götter haben die Würfel.
    • Scripted Desaster
      :rmxp: Scripted Desaster
      ("nicht ganz so ernstes Projekt")

      Ein verfressener Idiot und ein sarkastischer Workaholic treffen in einem dunklen Wald auf einen weißes Kaninchen...
      Ein Auftragskiller jagt einem Meisterdieb hinterher, wobei nicht ersichtlich ist, wer eigentlich wen jagt...
      Und eine "Kristallhöhle", sowie einen "Wald ohne Wiederkehr" gibts auch.

      Das bedeutet doch Spaß...
    • Pokémon EV
      :rmxp: Pokemon EV
      ("Zeitvertreib nebenbei - Kreatief-Helfer")

      Ist nur ein Pokemonspiel mit üblicher Story und nicht so üblicher Story.
      Ist inzwischen alles schonmal dagewesen. XD
    • Lost Island
      :rmxp: Harvest Moon - Lost Island
      (Arbeitstitel, "Eventtechnik-Projekt")

      Ist momentan mein Hauptprojekt, weil bei EE die Scripts einfach fehlen :<
      Das Spiel ist ein Harvest Moon Abklatsch. XD
      Felder funktionieren, Tiere auch, Grafiken sehen schon gut aus, Maps sind fast fertig. Man kann in die Miene, man kann einkaufen. Auf dem Papier ist alles schon durchgeplant, einiges muss noch umgesetzt werden.
  • Joseys Fortschritt

    • Endless Ending
      :hourglass: Story: 60%
      :foaf: Charas: 20%
      :leaf: Maps: 01%
      :ruby: Zeichnungen: 05%
      :color: Grafiken: 30%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      ...ist nicht viel, huh? ^^°
    • Scripted Desaster
      :hourglass: Story: 10%
      :foaf: Charas: 60%
      :leaf: Maps: 30%
      :ruby: Zeichnungen: 01%
      :color: Grafiken: 60%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      Gut Ding...
    • Pokemon EV
      :hourglass: Story: 60%
      :foaf: Charas: 10%
      :leaf: Maps: 00%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 80%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 70%
      Nicht ernstnehmen XD Das mache ich nur, wenn woanders nix mehr geht...
    • Lost Island
      :hourglass: Story: 100%
      :foaf: Charas: 10%
      :leaf: Maps: 90%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 60%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 00%
      Das macht richtig Spaß XD
  • Huiii

    Bitte klicken Sie weiter. Hier gibt es nichts zu sehen. Nichts. Hören Sie? Nichts.

9

Montag, 26. Februar 2018, 23:50

"&&" ist nicht das gleiche wie "&"

Das doppelte && ist tatsächlich dafür da, um Wahrheitswerte zu vergleichen und kann als "logisches Und" gelesen werden.
Das selbe gilt für das doppelte "||".

Das einfache & und das einfache | sind für Zahlen, so wie es auch + und - sind. Das sind dann Rechenoperatoren.

Josey

Storyteller

  • »Josey« ist der Autor dieses Themas

Motto: "Was du nicht willst, das man dir tu', füge keinem And'ren zu!"

  • Nachricht senden

10

Dienstag, 27. Februar 2018, 08:35

Warum wurde es dann nicht besser, als ich && eingefügt habe? o.o

& vergleicht Binärwerte- wieso hat es dann manchmal geklappt und manchmal nicht? Es lag an einer ungeraden rechten Zahl, ja?
Nehmen wir das Beispiel, das nicht funktionierte:
x = 8, y = 3 (auf x und y steht der Spieler drauf, das wird Variablen übergeben und dann so gerechnet:)
when 4 then feld_vor_spieler_x -= 1 & feld_vor_spieler_y += 1 # links+links
Case 4 (Player schaut nach links), jetzt müsste x = 7 und y = 4 sein, heraus kommen aber 8 und 4.
Dann sieht das jetzt so aus?

Quellcode

1
2
3
4
Sieben                  111
& Vier       <->     &  110
  -----               -----
= Drei               =   11

Oder so?

Quellcode

1
2
3
4
Acht                   1000
& Vier       <->     &  110
  -----               -----
= Null               =   0

Oder was wird da gerechnet?
Und was sagt es dann dem Maker? Irgendwas muss ja mit ungereden Zahlen richtig sein, damit es einen Code ausspuckt, der stimmt? Weil x und y bei zB x=16 , y=6 funktioniert hat (da kam dann 15, 7 raus).

Quellcode

1
2
3
4
Fünfzehn                1111
& Sieben       <->     & 111
  -----               -----
= Sieben               = 111

Moment. Ist es, weil hier sieben raus kommt? o.o Ist das bei ungeraden Zahlen immer richtig? ><
Wenns das ist, hab ich kapiert, wieso es manchmal geklappt hat und manchmal nicht XD
Aber noch nicht, wieso es nicht mit && geklappt hat. >_>
  • Joseys Wuselei

    • Meine Story - Pausiert
      Lust auf Abenteuer?
      So richtig mit Selbstbestimmung?
      Und mit was Spannendem? Zum Spielen? Ohne Schokolade?
      "Eines, das mit dem leistungsstärksten Grafikchip der Welt läuft? Deiner Vorstellungskraft?"
      Hier die Antwort:
      Bild
      Bild
      Hier könnt ihr euren Lieblingschar wählen ;D
      Und hier findet ihr das Minigame, das ab und an den Würfel ersetzt.
    • Meine Arbeiten
      Einige Ressourcen, vor allem Baby-Tiere, aber auch alle Requests, die ich erfüllt habe.
      Bild

      Bild

      In unregelmäßigen Abständen fasse ich alles Neue, was so im Studio passiert ist, zusammen. -Pausiert-
      Bild
    • Meine Fähigkeiten
      Maker: :rmxp: XP
      :rainbow: Pixeln: :star: :star: :star: :star: :star-empty: :star-empty:
      :image: Mappen: :star: :star: :star: :star: :star: :star-empty:
      :wrench-screwdriver: Eventen: :star: :star: :star: :star: :star-empty: :star-empty:
      :puzzle: Scripten: :star: :star-half: :star-empty: :star-empty: :star-empty: :star-empty:
      :music: Komponieren: :star-half: :star-empty: :star-empty: :star-empty: :star-empty: :star-empty:
    • (Mein) Autismus
      Ich bin im autistischen Sprektrum-
      sollte ich mich komisch verhalten, oder unhöflich wirken
      (oder mich zu oft entschuldigen, unaufmerksam sein, unsicher wirken, zum zehnten Mal nachfragen, blablabla),
      ist das nicht beabsichtigt.


      Josey. Epicgarantie.
      Nehmt das bloß nicht ernst! D:
    • Meine Welt
      Mein Ehemann Kain! :heart_full: :*
      Freund und Helfer in der Not, immer da, steht er mir mit Rat und Tat zur Seite. Meine andere Hälfte! : D
      Er verdient einfach einen Platz ( :medal: ) in meiner Signatur! XD
      :heart-half:
    • Mein Support
      Der In-Game-Charset-Generator!
      Erstelle Random-NPCs mit Charsetteilen!

      Diese Spiele finde ich toll und brauchen viel mehr Aufmerksamkeit!
      Bastelt mal Banner! : D

    • Meine beendeten Contests
      [Pixelcontest] Rund um den Kürbis
      Bild
      Abstimmung
      Siegerehrung

      Das Wunder der Berge
      Bild
      Abstimmung
      Siegerehrung
    • Meine Contests
      Bild Ein Schreibcontest in Arbeit! : D Bild
  • Joseys Spiele

    • Endless Ending
      :rmxp: Endless Ending
      (Arbeitstitel, "ernstes Projekt")

      Bild

      Eine Reise durch die Wüste.
      Sieben mächtige Gegenstände.
      Unendlich viele Aufgaben.

      Und die Götter haben die Würfel.
    • Scripted Desaster
      :rmxp: Scripted Desaster
      ("nicht ganz so ernstes Projekt")

      Ein verfressener Idiot und ein sarkastischer Workaholic treffen in einem dunklen Wald auf einen weißes Kaninchen...
      Ein Auftragskiller jagt einem Meisterdieb hinterher, wobei nicht ersichtlich ist, wer eigentlich wen jagt...
      Und eine "Kristallhöhle", sowie einen "Wald ohne Wiederkehr" gibts auch.

      Das bedeutet doch Spaß...
    • Pokémon EV
      :rmxp: Pokemon EV
      ("Zeitvertreib nebenbei - Kreatief-Helfer")

      Ist nur ein Pokemonspiel mit üblicher Story und nicht so üblicher Story.
      Ist inzwischen alles schonmal dagewesen. XD
    • Lost Island
      :rmxp: Harvest Moon - Lost Island
      (Arbeitstitel, "Eventtechnik-Projekt")

      Ist momentan mein Hauptprojekt, weil bei EE die Scripts einfach fehlen :<
      Das Spiel ist ein Harvest Moon Abklatsch. XD
      Felder funktionieren, Tiere auch, Grafiken sehen schon gut aus, Maps sind fast fertig. Man kann in die Miene, man kann einkaufen. Auf dem Papier ist alles schon durchgeplant, einiges muss noch umgesetzt werden.
  • Joseys Fortschritt

    • Endless Ending
      :hourglass: Story: 60%
      :foaf: Charas: 20%
      :leaf: Maps: 01%
      :ruby: Zeichnungen: 05%
      :color: Grafiken: 30%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      ...ist nicht viel, huh? ^^°
    • Scripted Desaster
      :hourglass: Story: 10%
      :foaf: Charas: 60%
      :leaf: Maps: 30%
      :ruby: Zeichnungen: 01%
      :color: Grafiken: 60%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      Gut Ding...
    • Pokemon EV
      :hourglass: Story: 60%
      :foaf: Charas: 10%
      :leaf: Maps: 00%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 80%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 70%
      Nicht ernstnehmen XD Das mache ich nur, wenn woanders nix mehr geht...
    • Lost Island
      :hourglass: Story: 100%
      :foaf: Charas: 10%
      :leaf: Maps: 90%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 60%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 00%
      Das macht richtig Spaß XD
  • Huiii

    Bitte klicken Sie weiter. Hier gibt es nichts zu sehen. Nichts. Hören Sie? Nichts.

11

Dienstag, 27. Februar 2018, 15:33

Beide fragen basieren an sich auf ein und derselben Eigenschaft von Ruby, bzw einer Programmiersprache, die Playm schon gut erklärt hat.

Hier meine zusammenfassung im Fall der fälle sollte es nicht verstanden worden sein: (wobei meine formelierung dann evt noch schwerer zu kapieren ist aber versuch macht kluch.. xD)
Spoiler

Bei Zuweisungen oder Methoden (intern ist += eine Methode die auf das linke element angewendet wird), so wird zuerst der code rechts ausgeführt.

Ruby Quellcode

1
2
3
x = 4
y = 1
x += y += 2

So wird nun erst "y+=2" ausgeführt und y ist danach 3. Dann wird "x += y" ausgeführt, also "x += 3", und x ist dann 7.
zum Lesen den Text mit der Maus markieren


====================================

Es wurde nicht besser, da && wie Playm wie schon gesagt hat es zum verbinden von Warheitswerten ist, und nicht zum kombinieren von berechnungen. Möchte man etwas nacheinander ausführen dann muss der code getrennt werden. Typischer weise wird das durch ein zeilenumbruch getan, kann aber auch durch ein ";" gemacht werden. So steht dann alles in einer zeile falls dies gewünscht ist.

Im falle von nummern wird übrigens die höhere zahl genommen. Das heißt also:

Ruby Quellcode

1
2
3
x = 8
y = 3
x += 1 && y += 1

Nun wird ersteinmal wieder "y += 1" ausgeführt (y = 4). Danach wird "1 && y" bzw "1 && 4" ausgeführt, welches 4 ergibt. Danach dann halt "x += 4".
Also zusammengefasst:

Quellcode

1
x += ( 1 && ( y += 1 ) )


====================================

Zum & operator:
Zunächst wird "y += 1" ausgeführt (y = 4), danach wird "1 & 4" ausgeführt welches binär verglichen 0 ergibt. Dann wird "x += 0" ausgeführt und so kommst du auf das ergebnis von x = 8 und y = 4.

Auch sind deine 1. binären rechnung darunter falsch:

Quellcode

1
7 & 4 = 4

müsste es lauten.
Du hast zum einen mal die zahl 4 falsch decodiert, binär ist das "100". "110" wäre die 6. Zum anderen hast du falsch die beiden ergebnise zusammengenommen:

Quellcode

1
2
3
4
  111
& 110
------
= 110


Ein kleiner trick zum merken des & operator ist: überall wo eine "1" in der 2. zahl steht, da steht auch eine "1" im ergebnis. Alle anderen stellen müssen mit "0" aufgefüllt werden. (Funfact: dieses verfahren nennt sich auch bitwise masking)

Mfg
  • Info

    Code 4 Life

    Humorvoller bis leicht verrückter Coder mit einer Vorliebe zu Kawaiien Katzen.
    Neko FTW

    (sobald ich kreativere Ideen hierfür hab pack ich das hier rein)
  • Sprachen

    Programmiersprachen:
    - C, C++, C#, Java, Ruby, Lua

    Websprachen
    - JS, HTML, CSS, PHP

    (Zumindest von allem einen guten anteil, nix Perfekt)
  • Meep

    Do you like Cookies? Me too. *mapft kekse* :cookie3:

    Das Ziel eines Programmierers ist es, Software zu entwickeln die Bug-frei ist.
    Das Ziel des Universums ist, Menschen zu erschaffen die diese Software kaputt bekommen.
    Wäre es ein Wettrennen, würde das Universum gewinnen.

    Why wear Java developers glasses? Because they can't C#.
  • ITgenies aktuelle Arbeit

    Ich arbeite meist *etwas* chaotischer als andere. Das heißt bei mir:
    Projekt anfangen, Woche bis 2 Wochen arbeiten, Projekt vergessen, Wiederhole nach Monaten Vorgang

    - ICG / IngameCharsetGenerator Thread (v1.6 - Release)
    - Umsetzung eines eigenen Makers :3
    - Support bei den Skriptanfragen
  • ITgenies pausierten Projekte

    - Eigenes Jump n' Run (+ eigener Physik Engine)
    - Eigenes (umfangreiches) Strategie / Echtzeit Spiel
    - Eigene Website
    - Mit Acc System, Achievements, Leveln...
    - Remake Alter Games
    - N haufen Engines....
    - .... und anderen random Code '^' x3

12

Dienstag, 27. Februar 2018, 22:28

Zitat

& vergleicht Binärwerte- wieso hat es dann manchmal geklappt und manchmal nicht? Es lag an einer ungeraden rechten Zahl, ja?
Ja. Ich gehe mal explizit durch was passiert ist.

Zitat

Nehmen wir das Beispiel, das nicht funktionierte:
x = 8, y = 3 (auf x und y steht der Spieler drauf, das wird Variablen übergeben und dann so gerechnet:)
when 4 then feld_vor_spieler_x -= 1 & feld_vor_spieler_y += 1 # links+links


Ich löse mal nacheinander die Rechenschritte auf, wie sie tatsächlich passieren.
Spoiler

Ruby Quellcode

1
2
3
# feld_vor_spieler_x hat den Wert 8
# feld_vor_spieler_y hat den Wert 3
feld_vor_spieler_x -= 1 & feld_vor_spieler_y += 1

Ruby Quellcode

1
2
3
# feld_vor_spieler_x hat den Wert 8
# feld_vor_spieler_y hat den Wert 4
feld_vor_spieler_x -= 1 & 4

Ruby Quellcode

1
2
3
# feld_vor_spieler_x hat den Wert 8
# feld_vor_spieler_y hat den Wert 4
feld_vor_spieler_x -= 0

Ruby Quellcode

1
2
3
# feld_vor_spieler_x hat den Wert 8
# feld_vor_spieler_y hat den Wert 4
 
zum Lesen den Text mit der Maus markieren


Und jetzt die Rechenschritte für y = 2
Spoiler

Ruby Quellcode

1
2
3
# feld_vor_spieler_x hat den Wert 8
# feld_vor_spieler_y hat den Wert 2
feld_vor_spieler_x -= 1 & feld_vor_spieler_y += 1

Ruby Quellcode

1
2
3
# feld_vor_spieler_x hat den Wert 8
# feld_vor_spieler_y hat den Wert 3
feld_vor_spieler_x -= 1 & 3

Ruby Quellcode

1
2
3
# feld_vor_spieler_x hat den Wert 8
# feld_vor_spieler_y hat den Wert 3
feld_vor_spieler_x -= 1

Ruby Quellcode

1
2
3
# feld_vor_spieler_x hat den Wert 7
# feld_vor_spieler_y hat den Wert 3
 
zum Lesen den Text mit der Maus markieren


Ungerade Zahlen haben in der Binärdarstellung nämlich immer hinten eine 1.
Eins ist 1, Drei ist 11, Fünf ist 101, Sieben ist 111, Neun ist 1001, Elf ist 1011, Dreizehn ist 1101, Fünfzehn ist 1111. Wenn wir also die Eins aus dem Minus-Gleich von feld_vor_spieler_x mit einer ungeraden Zahl "bitweise maskieren" (wie Genies in der IT sagen), dann kommt bei "1 & ungerade_Zahl" immer die 1 raus. Deswegen ist dir bei ungeraden Zahlen der Fehler nicht aufgefallen, weil es in diesem Sonerfall keine sichtbaren Spuren gibt.

Josey

Storyteller

  • »Josey« ist der Autor dieses Themas

Motto: "Was du nicht willst, das man dir tu', füge keinem And'ren zu!"

  • Nachricht senden

13

Mittwoch, 28. Februar 2018, 19:51

Vielen Dank! :D
Jetzt hab ichs kapiert. Ich merk mir das mit dem & und werd es nie wieder in einer Berechnung benutzen, sondern nur noch in Vergleichen XD
Hab gleich mal die ganzen Scripts abgescannt, hatte noch eine weitere von dem Dings drin, jetzt funktionierts XD
Weiter gehts mit der Bug-Suche :9

Danke! :D
  • Joseys Wuselei

    • Meine Story - Pausiert
      Lust auf Abenteuer?
      So richtig mit Selbstbestimmung?
      Und mit was Spannendem? Zum Spielen? Ohne Schokolade?
      "Eines, das mit dem leistungsstärksten Grafikchip der Welt läuft? Deiner Vorstellungskraft?"
      Hier die Antwort:
      Bild
      Bild
      Hier könnt ihr euren Lieblingschar wählen ;D
      Und hier findet ihr das Minigame, das ab und an den Würfel ersetzt.
    • Meine Arbeiten
      Einige Ressourcen, vor allem Baby-Tiere, aber auch alle Requests, die ich erfüllt habe.
      Bild

      Bild

      In unregelmäßigen Abständen fasse ich alles Neue, was so im Studio passiert ist, zusammen. -Pausiert-
      Bild
    • Meine Fähigkeiten
      Maker: :rmxp: XP
      :rainbow: Pixeln: :star: :star: :star: :star: :star-empty: :star-empty:
      :image: Mappen: :star: :star: :star: :star: :star: :star-empty:
      :wrench-screwdriver: Eventen: :star: :star: :star: :star: :star-empty: :star-empty:
      :puzzle: Scripten: :star: :star-half: :star-empty: :star-empty: :star-empty: :star-empty:
      :music: Komponieren: :star-half: :star-empty: :star-empty: :star-empty: :star-empty: :star-empty:
    • (Mein) Autismus
      Ich bin im autistischen Sprektrum-
      sollte ich mich komisch verhalten, oder unhöflich wirken
      (oder mich zu oft entschuldigen, unaufmerksam sein, unsicher wirken, zum zehnten Mal nachfragen, blablabla),
      ist das nicht beabsichtigt.


      Josey. Epicgarantie.
      Nehmt das bloß nicht ernst! D:
    • Meine Welt
      Mein Ehemann Kain! :heart_full: :*
      Freund und Helfer in der Not, immer da, steht er mir mit Rat und Tat zur Seite. Meine andere Hälfte! : D
      Er verdient einfach einen Platz ( :medal: ) in meiner Signatur! XD
      :heart-half:
    • Mein Support
      Der In-Game-Charset-Generator!
      Erstelle Random-NPCs mit Charsetteilen!

      Diese Spiele finde ich toll und brauchen viel mehr Aufmerksamkeit!
      Bastelt mal Banner! : D

    • Meine beendeten Contests
      [Pixelcontest] Rund um den Kürbis
      Bild
      Abstimmung
      Siegerehrung

      Das Wunder der Berge
      Bild
      Abstimmung
      Siegerehrung
    • Meine Contests
      Bild Ein Schreibcontest in Arbeit! : D Bild
  • Joseys Spiele

    • Endless Ending
      :rmxp: Endless Ending
      (Arbeitstitel, "ernstes Projekt")

      Bild

      Eine Reise durch die Wüste.
      Sieben mächtige Gegenstände.
      Unendlich viele Aufgaben.

      Und die Götter haben die Würfel.
    • Scripted Desaster
      :rmxp: Scripted Desaster
      ("nicht ganz so ernstes Projekt")

      Ein verfressener Idiot und ein sarkastischer Workaholic treffen in einem dunklen Wald auf einen weißes Kaninchen...
      Ein Auftragskiller jagt einem Meisterdieb hinterher, wobei nicht ersichtlich ist, wer eigentlich wen jagt...
      Und eine "Kristallhöhle", sowie einen "Wald ohne Wiederkehr" gibts auch.

      Das bedeutet doch Spaß...
    • Pokémon EV
      :rmxp: Pokemon EV
      ("Zeitvertreib nebenbei - Kreatief-Helfer")

      Ist nur ein Pokemonspiel mit üblicher Story und nicht so üblicher Story.
      Ist inzwischen alles schonmal dagewesen. XD
    • Lost Island
      :rmxp: Harvest Moon - Lost Island
      (Arbeitstitel, "Eventtechnik-Projekt")

      Ist momentan mein Hauptprojekt, weil bei EE die Scripts einfach fehlen :<
      Das Spiel ist ein Harvest Moon Abklatsch. XD
      Felder funktionieren, Tiere auch, Grafiken sehen schon gut aus, Maps sind fast fertig. Man kann in die Miene, man kann einkaufen. Auf dem Papier ist alles schon durchgeplant, einiges muss noch umgesetzt werden.
  • Joseys Fortschritt

    • Endless Ending
      :hourglass: Story: 60%
      :foaf: Charas: 20%
      :leaf: Maps: 01%
      :ruby: Zeichnungen: 05%
      :color: Grafiken: 30%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      ...ist nicht viel, huh? ^^°
    • Scripted Desaster
      :hourglass: Story: 10%
      :foaf: Charas: 60%
      :leaf: Maps: 30%
      :ruby: Zeichnungen: 01%
      :color: Grafiken: 60%
      :clipboard: Scripte: 70%
      :music-beam-16: Musik: 00%
      Gut Ding...
    • Pokemon EV
      :hourglass: Story: 60%
      :foaf: Charas: 10%
      :leaf: Maps: 00%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 80%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 70%
      Nicht ernstnehmen XD Das mache ich nur, wenn woanders nix mehr geht...
    • Lost Island
      :hourglass: Story: 100%
      :foaf: Charas: 10%
      :leaf: Maps: 90%
      :ruby: Zeichnungen: 00%
      :color: Grafiken: 60%
      :clipboard: Scripte: 90%
      :music-beam-16: Musik: 00%
      Das macht richtig Spaß XD
  • Huiii

    Bitte klicken Sie weiter. Hier gibt es nichts zu sehen. Nichts. Hören Sie? Nichts.

Social Bookmarks