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 ... 37 38 [39] 40 41 ... 47

Autor Thema: Fragen zum Scripting  (Gelesen 183691 mal)

nicht_mehr_Gast

  • Administrator
  • Newbie
  • *****
  • Beiträge: 328
Re: Fragen zum Scripting
« Antwort #570 am: Januar 10, 2011, 20:38:04 Nachmittag »

objectscript:
Code: (text) [Auswählen]
  1. on:kill{
  2. freestored "self","all";
  3. }
  4.  

Müsste so gehen.
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert
CETERVM CENSEO CARTHARGINEM ESSE DELENDAM.

Mr_Stranded

  • Newbie
  • *
  • Beiträge: 51
Re: Fragen zum Scripting
« Antwort #571 am: Januar 11, 2011, 13:24:09 Nachmittag »

ich teste es mal aber schon mal danke

Funktioniert leider nicht

hat sonst noch wer eine idee?
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert
Danke im Vorraus
Mr_Stranded

Möge euch nicht dass selbe Schicksal wie mich ereillen, auf ewig auf einer Insel gefangen zu sein.

l1a2r3s4

  • Newbie
  • *
  • Beiträge: 59
Re: Fragen zum Scripting
« Antwort #572 am: Januar 18, 2011, 20:37:27 Nachmittag »

hab ma ne frage zum terrain ( weis bin faul mir da große mühe zu machen)

in welchen abständen sind die höhenpunkte beim raster und mit welchen faktor muss muss ich rechen, um den ausenrand vond er map zu kriegen.z.B. bei einer 16*16 map. das bracuh ich für meinen generator versuch.
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert

Mc Leaf

  • Administrator
  • Newbie
  • *****
  • Beiträge: 332
Re: Fragen zum Scripting
« Antwort #573 am: Januar 21, 2011, 21:21:06 Nachmittag »

64 Pixel, falls ich mich nicht irre. In jedem Fall dürfte es eine 2er-Potenz sein, also sowas wie 16, 32, 64, 128...
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert

Quester

  • Newbie
  • *
  • Beiträge: 505
Re: Fragen zum Scripting
« Antwort #574 am: Januar 21, 2011, 21:32:50 Nachmittag »

Gibt [s2s:n6yg30im]mapsize[/s2s:n6yg30im] nicht auch die Anzahl der Terrainhöhepunkte zurück?
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert

Orge

  • Newbie
  • *
  • Beiträge: 196
Re: Fragen zum Scripting
« Antwort #575 am: Februar 05, 2011, 14:25:04 Nachmittag »

ich hab mal ne frage zu nem script, und zwar geht es um das Gebäude "Extruder" im Lost in Space mod von McLeaf.

Das gebäude hat eigentlich noch keinen sinn, doch das wollte ich ändern, indem ich dort kunststoff herstellen lasse.
jetzt habe ich zweimal die bedingung "on:use" eingegeben, einmal um chemikalien einzufüllen, und einmal um  Latex einzufüllen.

Es klappt auch ziemlich gut, aber wenn ich Chemikalien einfülle, erscheint erst das textfeld, welches normal erscheint, wenn ich einfach "E" drücke, danach wird der process "Chemikalien einfüllen" ausgeführt.
Wenn ich Latex einfülle, wird zuerst der Process "Latex einfüllen" ausgeführt, danach erscheint das textfeld.
Das finde ich seltsam, deswegen erbitte ich eure hilfe ;)

Am besten wäre es, wenn das textfeld gar nicht mehr erscheinen würde, sondern nur noch, wenn ich den Extruder mit nichts in der hand benutze (zb wie beim Lagerfeuer oder beimHochofen/backofen etc)

hier wären die scriptzeilen, der obere teil ist das latex, der untere die chemikalien:


on:use {
  local $tmp;
  $tmp=getlocal("object",$last,"online");
  if ($tmp==0) {
    msg "Die Energieleitung ist irgendwo unterbrochen!",3;
    speech "negative";
    freevar $tmp;
    skip;
  }
  if ((getplayerweapon()==863)&&(playergotitem(863)>0)) {
    if ($percent<100) {
      freestored "unit",1,863,1;
      $percent+=10;
      msg "Ich werde mal etwas Latex in die Anlage füllen.",4;
      process "Tank füllen",3000;
      $id=861;
      timer "self",3000,1,"fill";
    } else {
      msg "Nö. Da ist jetzt genug Latex drin.",3;
    }
  } else {
    msgbox "Extruder","infosinfos.lis","extruder";
    clear;
    add "closemenu;";
    button 0,"Aha.",17;
  }
}

on:use {
  local $tmp;
  $tmp=getlocal("object",$last,"online");
  if ($tmp==0) {
    msg "Die Energieleitung ist irgendwo unterbrochen!",3;
    speech "negative";
    freevar $tmp;
    skip;
  }
  if ((getplayerweapon()==908)&&(playergotitem(908)>0)) {
    if ($percent<100) {
      freestored "unit",1,908,1;
      $percent+=10;
      msg "Ich werde mal ein paar Chemikalien in die Anlage füllen.",4;
      process "Tank füllen",3000;
      $id=909;
      timer "self",3000,1,"fill";
    } else {
      msg "Nö. Da sind jetzt genug Chemikalien drin.",3;
    }
  } else {
    msgbox "Extruder","infosinfos.lis","extruder";
    clear;
    add "closemenu;";
    button 0,"Aha.",17;
  }
}
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert
Bitte, benutzt Satzzeichen! Auf eine Frage, die niemand versteht, gibts wohl keine Antwort.

Quester

  • Newbie
  • *
  • Beiträge: 505
Re: Fragen zum Scripting
« Antwort #576 am: Februar 05, 2011, 16:34:42 Nachmittag »

Ich weiß gar nicht, wie das überhaupt mit 2 Events funktionieren kann. Hier wäre mal mein Lösungsansatz:

on:use {
  local $tmp;
  $tmp=getlocal("object",$last,"online");
  if ($tmp==0) {
    msg "Die Energieleitung ist irgendwo unterbrochen!",3;
    speech "negative";
    freevar $tmp;
    skip;
  }
  if ((getplayerweapon()==863)&&(playergotitem(863)>0)) {
    if ($percent<100) {
      freestored "unit",1,863,1;
      $percent+=10;
      msg "Ich werde mal etwas Latex in die Anlage füllen.",4;
      process "Tank füllen",3000;
      $id=861;
      timer "self",3000,1,"fill";
    } else {
      msg "Nö. Da ist jetzt genug Latex drin.",3;
    }
  } elseif ((getplayerweapon()==908)&&(playergotitem(908)>0)) {
    if ($percent<100) {
      freestored "unit",1,908,1;
      $percent+=10;
      msg "Ich werde mal ein paar Chemikalien in die Anlage füllen.",4;
      process "Tank füllen",3000;
      $id=909;
      timer "self",3000,1,"fill";
    } else {
        msg "Nö. Da sind jetzt genug Chemikalien drin.",3;
    }
  } else {
    msgbox "Extruder","infosinfos.lis","extruder";
    clear;
    add "closemenu;";
    button 0,"Aha.",17;
}
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert

Reyna

  • Newbie
  • *
  • Beiträge: 7
Re: Fragen zum Scripting
« Antwort #577 am: Februar 05, 2011, 18:35:01 Nachmittag »

Anfängerfrage, ich habe es geschafft mir Samen von den Seerosen zu machen , kann sie aber nicht auf dem Wasser pflanzen sondern nur an Land.
Kann mir jemand helfen.

Script:

id=372
name=seerose
icon=gfxexticonsseerose02.bmp
group=flower,ext,earymgn
model=gfxextseerose02.b3d
health=10
mat=leaf
behaviour=aligntowater
col=2
autofade=200
script=start
   on:hit {
      if ( random(3)==1) { find 519; }
   }
   on:kill {
      if (spawntimer("self")>=0){
         create "item",519,getx("self"),getz("self"),3;
      }
   }
script=end
.
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert

Orge

  • Newbie
  • *
  • Beiträge: 196
Re: Fragen zum Scripting
« Antwort #578 am: Februar 05, 2011, 20:06:59 Nachmittag »

danke, das script hat geklappt, bzw jetzt wird die msgbox immer nach dem einfüllen eingeblendet, was aber besser ist als vorher =)

das mit den zwei on:use events hatte ich gemacht, weil bei mir das mit dem einen allein net geklappt hat.
wegen dem "elseif"
wenn "if" "wenn" bedeutet und das gegenteil zu else darstellt,
bedeutet dann "elseif" "beziehungsweise wenn" und stellt das gegenteil zum gleichen "else" dar, wie es schon das "if" tut?

Liebe Grüße

Orge
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert
Bitte, benutzt Satzzeichen! Auf eine Frage, die niemand versteht, gibts wohl keine Antwort.

Quester

  • Newbie
  • *
  • Beiträge: 505
Re: Fragen zum Scripting
« Antwort #579 am: Februar 06, 2011, 01:02:56 Vormittag »

"if" wird ausgeführt, wenn die Bedingung erfüllt ist. "else" wird ausgeführt, wenn die vorherigen Bedingungen nicht erfüllt werden konnten. "elseif" wird ausgeführt, wenn alle bisherigen Bedingungen nicht erfüllt worden sind, und die eigene Bedingung erfüllt ist. Warum die MsgBox nach dem einfüllen eingeblendet wird, weiß ich nicht.

@Reyna
Da müstest du schon selber ein Script schreiben, da beim Anpflanzen "useground" benutzt wird.
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert

Reyna

  • Newbie
  • *
  • Beiträge: 7
Re: Fragen zum Scripting
« Antwort #580 am: Februar 06, 2011, 19:23:05 Nachmittag »

Zitat von: "Quester"
"
@Reyna
Da müstest du schon selber ein Script schreiben, da beim Anpflanzen "useground" benutzt wird.


vielen lieben Dank für die schnelle Anwort, ich hatte die game_planting.inf völlig übersehen. Da das ein globales script ist, trau ich mich da noch nicht ran, bin der totale Anfänger.
Habe es für mich jetzt so geändert, das ich mir die Seerosen bauen kann.

MfG
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert

Kirschkaffee

  • Newbie
  • *
  • Beiträge: 78
Re: Fragen zum Scripting
« Antwort #581 am: Februar 08, 2011, 15:01:06 Nachmittag »

Zitat von: "Quester"
Warum die MsgBox nach dem einfüllen eingeblendet wird, weiß ich nicht.

Einfach noch ein "skip;" hinter das Latex- und hinter das Chemikalienteil schreiben. :)

Code: (text) [Auswählen]
  1.    } else {
  2.       msg "Nö. Da ist jetzt genug Latex drin.",3;
  3.     }
  4.     skip;
  5.   }
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert
There are 10 types of people. Those who understand binary and those who don\'t.

Quester

  • Newbie
  • *
  • Beiträge: 505
Re: Fragen zum Scripting
« Antwort #582 am: Februar 08, 2011, 15:22:22 Nachmittag »

Was allerdings nur passieren sollte, wenn du das in 2 Events aufteiltst.
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert

Kirschkaffee

  • Newbie
  • *
  • Beiträge: 78
Re: Fragen zum Scripting
« Antwort #583 am: Februar 08, 2011, 15:59:25 Nachmittag »

ich hätte das sowieso komplett mit msgbox und buttons gelöst, dann hat mein kein on:use-Monster, wenn man noch was dazufügen möchte :) und die msgbox taucht nach dem Abfüllen auch nicht mehr auf.

Code: (text) [Auswählen]
  1. on:use {
  2.   local $tmp;
  3.   $tmp=getlocal("object",$last,"online");
  4.   if ($tmp==0) {
  5.     msg "Die Energieleitung ist irgendwo unterbrochen!",3;
  6.     speech "negative";
  7.     freevar $tmp;
  8.     skip;
  9.   }
  10.   else {
  11.     msgbox "Extruder","infosinfos.lis","extruder";
  12.     clear;
  13.     add "closemenu;";
  14.     button 0,"Latex einfüllen",12,"event filllatex,object,$this; closemenu;";
  15.     button 1,"Chemikalien einfüllen",12,"event fillchem,object,$this; closemenu;";
  16.         button 2,"Aha.",17;
  17.   }
  18. }
  19.  
  20. on:filllatex {
  21.   if ((playergotitem(863)>0)&&($percent<100)) {
  22.     freestored "unit",1,863,1;
  23.     $percent+=10;
  24.     msg "Ich werde mal etwas Latex in die Anlage füllen.",4;
  25.     process "Tank füllen",3000;
  26.     $id=861;
  27.     timer "self",3000,1,"fill";
  28.     }
  29.     else {
  30.       msg "Nö. Da ist jetzt genug Latex drin.",3;
  31.     }
  32. }  
  33.  
  34. on:fillchem {
  35.   if ((playergotitem(908)>0)&&($percent<100)) {
  36.     freestored "unit",1,908,1;
  37.     $percent+=10;
  38.     msg "Ich werde mal ein paar Chemikalien in die Anlage füllen.",4;
  39.     process "Tank füllen",3000;
  40.     $id=909;
  41.     timer "self",3000,1,"fill";
  42.     }
  43.     else {
  44.         msg "Nö. Da sind jetzt genug Chemikalien drin.",3;
  45.     }
  46. }
  47.  
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert
There are 10 types of people. Those who understand binary and those who don\'t.

Anonymous

  • Newbie
  • *
  • Beiträge: 1.610
Re: Fragen zum Scripting
« Antwort #584 am: Februar 26, 2011, 21:57:51 Nachmittag »

Ich hab da mal ne frage:
was hat es auf sich mit einem scriptkey?
wie benutzt man
on:keyhitXX
on:keydownXX
oder
on:keyreleaseXX ?
würd mich nal interesieren. ^^
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert
Seiten: 1 ... 37 38 [39] 40 41 ... 47