s2ext

Bitte logg dich ein oder registriere dich.

Einloggen mit Benutzername, Passwort und Sitzungslänge
Erweiterte Suche  

Neuigkeiten:

Fehler und Spammer oder Probleme beim Login hier melden.

Seiten: 1 ... 17 18 [19] 20 21 ... 47

Autor Thema: Fragen zum Scripting  (Gelesen 204228 mal)

Don Philippe

  • Newbie
  • *
  • Beiträge: 81
    • http://
Re: Fragen zum Scripting
« Antwort #270 am: August 03, 2008, 17:57:25 Nachmittag »

Wie kann ich den PS so aendern dass er mir auf die HOHEN Bodenplatten auch automatisch ein Raster von Waenden setzt? Ich moechte naehmlich eine 2. Etage bauen.
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert

Mc Leaf

  • Administrator
  • Newbie
  • *****
  • Beiträge: 332
Re: Fragen zum Scripting
« Antwort #271 am: August 03, 2008, 21:19:55 Nachmittag »

Zitat von: "Don Philippe"
Wie kann ich den PS so aendern dass er mir auf die HOHEN Bodenplatten auch automatisch ein Raster von Waenden setzt? Ich moechte naehmlich eine 2. Etage bauen.
Hm...

Code: (text) [Auswählen]
  1. loop("objects",922) {
  2.   $id=loop_id();
  3.   $x=getx("obje[quote][/quote]ct",$id);
  4.   $z=getz("object",$id);
  5.   $x+=40;
  6.   $id=create("object",900,$x,$z);
  7.   $y=(gety("object",$id)+60);
  8.   setpos "object",$id,"self",$y,"self";
  9. }
  10.  
  11. loop("objects",922) {
  12.   $id=loop_id();
  13.   $x=getx("object",$id);
  14.   $z=getz("object",$id);
  15.   $z+=40;
  16.   $id=create("object",900,$x,$z);
  17.   setrot "object",$id,"self",(getyaw("object",$id)+90),"self";
  18.   $y=(gety("object",$id)+60);
  19.   setpos "object",$id,"self",$y,"self";
sollte funzen.
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert

Don Philippe

  • Newbie
  • *
  • Beiträge: 81
    • http://
Re: Fragen zum Scripting
« Antwort #272 am: August 03, 2008, 23:01:10 Nachmittag »

Alles klar, dankeschoen. :)
Dieses Bausystem ist echt genial!
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert

Robo01

  • Newbie
  • *
  • Beiträge: 147
Re: Fragen zum Scripting
« Antwort #273 am: August 05, 2008, 17:29:29 Nachmittag »

Hat sich alles gelöst xD  ,,, =/  ,,, ^^u
Außer der ersten frage u. dem ersten Code u.
Wie benitze ich einen normahlen gebittrigger wo man nuhr die radius angabe machen kann?
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert

Jemand

  • Newbie
  • *
  • Beiträge: 25
Re: Fragen zum Scripting
« Antwort #274 am: August 05, 2008, 17:44:15 Nachmittag »

Mit solchen Gebite-Triggers kannst du Gebiete festlegen und dann mit der Abfrage inarea "Klasse", ID kannst du nachprüfen, ob das Objekt "Klasse" (zb "item") mit der ID (zB 12) in dem jeweiligem Gebiet ist.

inarea "Klasse", ID

ein Beispiel (Muss man glaub ich in dem entsprechendem Gebites-Trigger ausführen...)

Code: (text) [Auswählen]
  1. on:start
  2. {
  3. timer "self",1000;
  4. }
  5.  
  6. on:timer
  7. {
  8. if(inarea("unit",1))
  9.       {
  10.       kill 1;
  11.       }
  12. }
  13.  


Dieser Code prüft mit timer jede Sekunde (1000 Millisekunden) nach, ob der Spieler im Gebiet ist. Dann tötet er den Spieler.
(Die Leerstellen nach if(...) habe ich für mich persönlich gemacht damit ich net den Überblick verliere)
Muss man glaub ich in dem entsprechendem Gebites-Trigger ausführen...

Hoffentlich hab ich kein Fehler getippt ^^' Passiert mir öfters.... :oops:
Und Hoffentlich konnte ich damit auch helfen ^^

Jemand
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert
Es gibt viele kopiene von mir....
Aber ich bin der echte Jemand!

banane

  • Newbie
  • *
  • Beiträge: 290
    • http://www.eliswebspace.de.vu
Re: Fragen zum Scripting
« Antwort #275 am: August 07, 2008, 18:35:04 Nachmittag »

für den gebiettrigger ist das unnötig. der überprüft von selbst, wann etwas in reichweite ist (on:trigger  {kill 1;} )

ich glaube robo meinte aber das info "gebiet" bzw "ki-gebiet" o.ä. . da kann man natürlich mit inarea arbeiten.
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert
Keine Signatur. Klickt trotzdem bitte auf diesen Link<br>
Bitte wendet euch mit S2Ext an McLeaf, nicht an mich!

Robo01

  • Newbie
  • *
  • Beiträge: 147
Re: Fragen zum Heißluftbalon
« Antwort #276 am: August 09, 2008, 18:13:06 Nachmittag »

Tach alle zusammen,

mal ne frage:
Wenn ich mich nicht irre steht der Heißluftbalon unter ständigen [s2s:aoco03x8]freeze[/s2s:aoco03x8] befel und wird mit septon hoch und runter gebracht oder?- Ich will nähmlich sowar mal selber ausprobieren!
Danke im vorraus! ^o)
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert

banane

  • Newbie
  • *
  • Beiträge: 290
    • http://www.eliswebspace.de.vu
Re: Fragen zum Scripting
« Antwort #277 am: August 09, 2008, 22:05:35 Nachmittag »

ich find nix von freeze... da guck:

aus der units_ext.inf:
Code: (text) [Auswählen]
  1. id=101
  2. name=Fesselballon
  3. icon=gfxexticonsballoon.bmp
  4. group=vehicle,ext,bizzl
  5. model=gfxextballoon.b3d
  6. health=50
  7. colxr=40
  8. colyr=10
  9. scale=10
  10. behaviour=vehicle
  11. mat=wood
  12. maxdepth=100
  13. rideoffset=50
  14. var=owner,Besitzer,1,0
  15. var=sinkspeed,Sinkgeschwindigkeit (/10),1,0
  16. script=start
  17. on:use { if ($owner==1) { ride; } }
  18. on:kill {
  19.     explosion getx("unit",$me),gety("unit",$me),getz("unit",$me);
  20.     free "self";
  21.     freevar $me;
  22.     freevar $height;
  23.     freevar $dofly;
  24. }
  25. on:start {
  26.     local $height, $me, $dofly, $danger, $interval;
  27.     $height=gety("self");
  28.     $me=currentid();
  29.     $dofly=1;
  30.     $danger=0;
  31.     $interval=75;
  32.     timer "self",1,0,"setheight";
  33. }
  34. on:create { event "start"; }
  35.  
  36. on:setheight {
  37.     $me=currentid();
  38.     local $check;
  39.     $check=exists("unit",$me); $check=$check*$dofly;
  40.     if ($check==0) { freevar $check; skip; }
  41.     freevar $check;
  42.    
  43.     local $x,$y,$z;
  44.     $x=getx("self");
  45.     $z=getz("self");
  46.     $y=terrainy($x,$z);
  47.     if ($y<0) { $y=0; }
  48.    
  49.     if ($height<$y) {
  50.         $height=$y;
  51.     } elseif ($height==$y) { }
  52.     else {
  53.         $height-=$sinkspeed/10.0;
  54.     }
  55.    
  56.     setpos "self","self",$height+1,"self";
  57.    
  58.     freevar $x; freevar $z;
  59.    
  60.     if (riding()!=$me) { freevar $y; skip; }
  61.    
  62.     if ($key00down==1) { $height++; }
  63.     if (($key01down==1) && ($height>$y+15)) { $height--; }
  64.    
  65.     freevar $y;
  66.    
  67.     if ($danger<0) { skip; }
  68.     if ($height<751) { $danger=0; skip; }
  69.    
  70.     if ($danger==0) {
  71.         if (lives("unit",1)==1) { play "gasp.wav"; }
  72.         $danger=1;
  73.     } else { $danger++; }
  74.    
  75.     if ($danger>=$interval) { $danger=0; }
  76.    
  77.     echo "$danger";
  78.    
  79.     if ($height>1500) {
  80.         if (lives("unit",1)==1) {
  81.             if ($danger==0) { damage "unit",1,10; }
  82.         }
  83.     }
  84.     if ($height>750) { $interval=75; }
  85.     if ($height>1000) { $interval=50; }
  86.     if ($height>1250) { $interval=25; }
  87.    
  88. }
  89.  
  90. on:godown { $height--; }
  91.  
  92. on:goup { $height++; }
  93.  
  94. on:stopfly { $dofly=0; }
  95.  
  96. on:startfly {
  97.     $height=gety("self");
  98.     $dofly=1;
  99. }
  100. script=end
  101.  
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert
Keine Signatur. Klickt trotzdem bitte auf diesen Link<br>
Bitte wendet euch mit S2Ext an McLeaf, nicht an mich!

Robo01

  • Newbie
  • *
  • Beiträge: 147
Re: Fragen zum Scripting
« Antwort #278 am: August 10, 2008, 08:50:18 Vormittag »

Welcher teich sorgt denn jetzt dafür dass er auf der stelle bleibt?
Ich blik da einfach nicht durch! :()
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert

banane

  • Newbie
  • *
  • Beiträge: 290
    • http://www.eliswebspace.de.vu
Re: Fragen zum Scripting
« Antwort #279 am: August 10, 2008, 09:46:56 Vormittag »

er bleibt gar nicht auf der stelle :P
das script im überblick:

Code: (text) [Auswählen]
  1. on:kill { /*effekte beim zerstören*/ }
  2. on:start { /*setzung von berechnungsvariablen (fliegt der ballon? wie schnell sinkt er? ...) */
  3.   timer: jede millisekunde wird "setheight" ausgelöst
  4. }
  5. on:create { /* "start" wird ausgelöst, um die variablen zu erstellen*/}
  6. on:setheight { /* berechnung von schaden, höhe etc */
  7.   setpos "self","self",$height+1,"self"; //Setzung des Ballons auf eine bestimmte Höhe. das passiert ja jede millisekunde, deswegen erzeugt es die illusion als würde der ballon stillstehen
  8. }
  9. on:godown,goup, startfly, stopfly { /* scriptkeygesteuerte variablenänderungen */ }

ich hab alles "unwichtige" weggelassen, damit du einen einblick in die essenz des scriptes bekommst ;)
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert
Keine Signatur. Klickt trotzdem bitte auf diesen Link<br>
Bitte wendet euch mit S2Ext an McLeaf, nicht an mich!

Robo01

  • Newbie
  • *
  • Beiträge: 147
Re: Fragen zum Scripting
« Antwort #280 am: August 11, 2008, 18:50:25 Nachmittag »

Danke noch mal-> Dass ist das erste mal das ich den Code kapiere :wink:

Und weil es so schön ist gleich noch eine Frage:

Code: (text) [Auswählen]
  1. on:start {
  2. $newraptor==count ("unit",2);
  3. }
  4.  
  5. on:trigger {
  6. if ($1==0) {
  7. $newraptor--;
  8. $1++;
  9. }
  10.  
  11. if (count ("unit",2)==$newraptor) {
  12. $Anzahl++;
  13. $newraptor--;
  14. msg "Du hast $Anzahl Raptoren getötet";
  15. }
  16.  
  17. if ($Anzahl==10) {
  18. event "quit","object",2;
  19. }
  20.  
  21. }
  22.  
  23. on:changeday {
  24. $newraptor==count "unit",2;
  25. $1--;
  26. }
  27.  

Was mache ich falsch?
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert

banane

  • Newbie
  • *
  • Beiträge: 290
    • http://www.eliswebspace.de.vu
Re: Fragen zum Scripting
« Antwort #281 am: August 11, 2008, 20:54:36 Nachmittag »

1. für zuweisungen ein einfaches = :
on:start {
    $newraptor=count ("unit",2);
 }
(so auch bei on:changeday)

2. afaik dürfen variablennamen nicht mit zahlen anfangen, mach also statt $1 lieber $foobar, $tmp,  $stuff oder so ;)
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert
Keine Signatur. Klickt trotzdem bitte auf diesen Link<br>
Bitte wendet euch mit S2Ext an McLeaf, nicht an mich!

Robo01

  • Newbie
  • *
  • Beiträge: 147
Re: Fragen zum Scripting
« Antwort #282 am: August 12, 2008, 17:33:12 Nachmittag »

Danke!
Das mit den "$XY==" war ein blöder fehler von mir :@  ist mir wol durch die Lappen gegangen :shock:
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert

mww

  • Newbie
  • *
  • Beiträge: 21
Re: Fragen zum Scripting
« Antwort #283 am: August 21, 2008, 19:13:31 Nachmittag »

Code: (text) [Auswählen]
  1. on:start {
  2. $tower=1;
  3. }
  4.  
  5. on:use {
  6. if ($tower=1)
  7. {setat "unit", 1, "info", 1;
  8. $tower=2;}
  9. else {setat "unit", 1, "info", 2;
  10. $tower=1;}
  11. }
  12.  

Script um den großen Leuchtturm zu besteigen.
Man kriegt aber beim Abstieg Fallschaden.
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert
Bis auf Wiederlesen!

banane

  • Newbie
  • *
  • Beiträge: 290
    • http://www.eliswebspace.de.vu
Re: Fragen zum Scripting
« Antwort #284 am: August 24, 2008, 11:24:35 Vormittag »

freetimers 0,"falling";
...
$s2g_falldamage=1;
event "set falldamage",0,0;

Für die befehle in "..." müsste der fallschaden aus sein und danach wieder an gehen. allerdings kann ich nix garantieren da ich es nicht getestet habe...
ACHTUNG: das script schmeißt den fallschaden auf jeden fall an, egal ob er vorher an oder aus war!
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert
Keine Signatur. Klickt trotzdem bitte auf diesen Link<br>
Bitte wendet euch mit S2Ext an McLeaf, nicht an mich!
Seiten: 1 ... 17 18 [19] 20 21 ... 47