Ein Forum, in dem sich neue Clonk Entwickler untereinander austauschen können.
 
StartseiteStartseite  PortalPortal  FAQFAQ  SuchenSuchen  AnmeldenAnmelden  MitgliederMitglieder  LoginLogin  

Teilen | 
 

 Alle Materialien eines Typs ersetzen

Vorheriges Thema anzeigen Nächstes Thema anzeigen Nach unten 
AutorNachricht
Donky
Hauptman
Hauptman
avatar

Männlich Alter : 20
Ort : In der Nähe Hamburgs
Anmeldedatum : 03.11.09

BeitragThema: Alle Materialien eines Typs ersetzen   Mi Dez 29, 2010 2:04 pm

Ich habe gerade folgendes Problem:
Ich wollte in einem Szenario alle Säure mit Wasser ersetzen.
Dazu habe ich diesen Script versucht:
Code:

func Script360()
{
for(var X = LandscapeWidth();X>=0;X--) ReplaceMaterial("Acid","Water",X);
}

func ReplaceMaterial(szMaterial,szNewMaterial,iX)
{
  for(var Y=LandscapeHeight();Y>=0;Y--) {
  if(GetMaterial(iX,Y) == Material(szMaterial))
 if(ExtractMaterialAmount(iX,Y,Material(szMaterial),1)) InsertMaterial(Material(szNewMaterial),iX,Y);
  }
}
raus kam dann sowas hier


keine Errors, keine Warnings. Ich weiß echt nicht mehr weiter. Wär toll wenn ihr helfen könntet.

EDIT: Super das klappt echt toll. Bis auf den letzten Pixel cheers . Kann hier bitte wer closen?


Zuletzt von Donky am Mi Dez 29, 2010 3:00 pm bearbeitet; insgesamt 1-mal bearbeitet
Nach oben Nach unten
Benutzerprofil anzeigen
Limeox
Admiral
Admiral
avatar

Männlich Anmeldedatum : 25.04.10

BeitragThema: Re: Alle Materialien eines Typs ersetzen   Mi Dez 29, 2010 2:23 pm

InsertMaterial setzt nur einen Materialpixel, d.h. einen losen Pixel. Machs per DrawMaterialQuad. So wirds auch in Goldrennen getan.

Code:
for (var x = 0; x < LandscapeWidth(); x++)
  for (var y = 0; y < LandscapeHeight(); y++)
    if (GetMaterial(x, y) == Material("Acid"))
      DrawMaterialQuad("Water", x, y, x + 1, y, x + 1, y + 1, x, y + 1, true);
Nach oben Nach unten
Benutzerprofil anzeigen
 
Alle Materialien eines Typs ersetzen
Vorheriges Thema anzeigen Nächstes Thema anzeigen Nach oben 
Seite 1 von 1
 Ähnliche Themen
-
» Zusammenfassung aller Postings eines Tages/einer Woche per E-Mail an alle User?
» Ziel 63 - Verkauf eines Pferds für mindestens 1 Pass
» Spalten nicht alle gleich groß im . Wie stelle ich das ein?
» Einbindung eines Forum in jimdo-Site
» Frage zu verschiedene Styles per Wahlschalter im Forum für alle Versionen

Befugnisse in diesem ForumSie können in diesem Forum nicht antworten
CNDG :: Sonstiges :: Scripthilfe-
Gehe zu: