25. Apr 2024, 09:25 Hallo Gast.
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

Einloggen mit Benutzername, Passwort und Sitzungslänge. Hierbei werden gemäß Datenschutzerklärung Benutzername und Passwort verschlüsselt für die gewählte Dauer in einem Cookie abgelegt.


Select Boards:
 
Language:
 


Autor Thema: Anoverions Coding-Fragen  (Gelesen 6258 mal)

Alien aka Infiltrator

  • Held von Helms Klamm
  • ***
  • Beiträge: 1.236
  • Edain was good ;-)
Re: Anoverions Coding-Fragen
« Antwort #15 am: 6. Nov 2009, 12:14 »
kleine anmerkung hierzu:
if sword <= 0.33 then
ObjectHideSubObjectPermanently( self, "SWORD01", false )
elseif sword <= 0.66 then
ObjectHideSubObjectPermanently( self, "SWORD02", false )

Ist zwar an sich nicht falsch, allerdings kanns dir passieren das du keine Waffe angezeigt bekommst
Denn, wenn Sword (also die Zufallszahl) kleiner 0.33 ist dann wird SWORD01 angezeigt, zwischen .34 und .66 wird SWORD02 angzeigt, allerdings hast du nicht gesagt was passieren soll wenn die zahl über .66 groß ist
Eventuelle wurde die Zahl bisher immer größer .66, dann wird dir natürlich nichts angezeigt

Lösungvorschlag dazu: if sword <= 0.50 then
ObjectHideSubObjectPermanently( self, "SWORD01", false )
else
ObjectHideSubObjectPermanently( self, "SWORD02", false )
Der letzte Fall sollte immer ein "else" sein (nicht zwingend, aber am einfachsten), natürlich nur wenn du IMMER eins der beiden Schwerter haben willst...

Würde dir vll auch dazu raten eine eindeutigere Variablenbezeichnung zu verwenden, das hat EA Games leider auch recht schlecht gemacht ( die nennen jegliche Variable "str" -,-*)
Da es sich um eine Zahl handelt würde ich dir raten das ganze SwordZahl oder SwordDouble zu nennen (double ist der Datentyp einer Gleitkommazahl), dann ist der Code auch für Andere leichter Lesbar und es entstehen keine verwechslungen mit zb. den Meshnamen

Rimli

  • Galadhrim
  • **
  • Beiträge: 716
Re: Anoverions Coding-Fragen
« Antwort #16 am: 6. Nov 2009, 17:38 »
Noch eine Anmerkung:
Funzt es denn bei anderen Units mit den Meshs noch? Z.B. haben Bogenschützen erst mit Feuerpfeilen auch das Feuer am Bogen oder schon sofort?
Wenn sie Feuer schon sofort haben, dann deutet das darauf hin, dass du deine scripts.lua zerschossen hat (geht recht schnell, z.B. zwei Functions mit gleichem Namen oder ein end iwo vergessen).
Die Folge ist, dass die komplette scripts.lua lahm gelegt wird, und das ganze ohne Fehlermeldung der game.dat

Anoverion

  • Zwergischer Entdecker
  • **
  • Beiträge: 468
  • There´s still enough time to die...
Re: Anoverions Coding-Fragen
« Antwort #17 am: 6. Nov 2009, 18:28 »
@Rimli
Danke für den Tipp!
Daran wird es wohl liegen. Ich hab mich schon gewundert, warum die gegnerischen Truppen alle geupgradet sind ohne einen Effekt zu bewirken.

Edit:

Es geht jetzt.
Vielen Dank nochmal an alle,
 die mir bei der Sache geholfen haben
« Letzte Änderung: 6. Nov 2009, 18:37 von Anoverion »

Ealendril der Dunkle

  • Gast
Re: Anoverions Coding-Fragen
« Antwort #18 am: 6. Nov 2009, 19:49 »
Jou, super Rimli. (Ich glaube ich habe dich auch mal darauf aufmerksam gemacht oder?  :) )
Ja, lua-scripts, da muss man immer ein wenig aufpassen.
Nun, mein Tutorial funktioniert in dieser Form fehlerfrei, freut mich also, dass die Sachen bei dir jetzt umgesetzt sind.

Rimli

  • Galadhrim
  • **
  • Beiträge: 716
Re: Anoverions Coding-Fragen
« Antwort #19 am: 7. Nov 2009, 11:42 »
@Ea
Weiß nicht mehr genau, wer mir das mal gesagt hat. Jedenfalls hab ich mich beim Coden einer Saurons Mund Fähigkeit sehr mit der scripts.lua rumgeplagt und irgendwann auch die komplette scripts.lua zerschossen. ^^

Hauptsache es geht jetzt, freut mich. :)
« Letzte Änderung: 7. Nov 2009, 13:21 von Rimli »