Autor Thema: [Scripting for Dummies RELOADED] - Vorbereitungen  (Gelesen 12776 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Offline FG28_Kodiak

  • Blasenteetrinker
  • *****
  • Beiträge: 1.893
Re: [Scripting for Dummies RELOADED] - Vorbereitungen
« Antwort #20 am: 29.Juni.2012, 09:30 »
Eigentlich dachte ich wenn der nächste reguläre Patch raus kommt, aber das scheint ja doch noch zu dauern  ::)

Offline ulyssesOne

  • Blasenteetrinker
  • *****
  • Beiträge: 970
  • No Panic !!!
Re: [Scripting for Dummies RELOADED] - Vorbereitungen
« Antwort #21 am: 29.Juni.2012, 09:33 »
Bleib lieber dabei.  ;)
We ask you to react professionally – exactly this type of reaction will help us to fix everything as soon as possible.

Offline Trantor

  • Blasenteetrinker
  • *****
  • Beiträge: 975
  • Burn Baby Burn!
    • Jagdgruppe Ost
Re: [Scripting for Dummies RELOADED] - Vorbereitungen
« Antwort #22 am: 29.Juni.2012, 13:08 »
Ach Quatsch , in 2 Wochen ist er da  :P





 ;D

Offline FG28_Kodiak

  • Blasenteetrinker
  • *****
  • Beiträge: 1.893
Re: [Scripting for Dummies RELOADED] - Vorbereitungen
« Antwort #23 am: 29.Juni.2012, 19:12 »
Ui Ui Ui ich wusste es, es gibt ein paar neue Events in AMission und Methoden in IGameplay und ein paar neue Klassen im neuen Patch.

AMission
  public virtual void OnBombExplosion(string title, double mass, Point3d pos, AiDamageInitiator initiator, int eventArgInt);
  public virtual void OnBuildingKilled(string title, Point3d pos, AiDamageInitiator initiator, int eventArgInt);
  public virtual void OnStationaryKilled(GroundStationary _stationary, AiDamageInitiator initiator, int eventArgInt);

GamePlay
    GroundStationary[] gpGroundStationarys();
    GroundStationary[] gpGroundStationarys(string Country);
    GroundStationary[] gpGroundStationarys(double x, double y, double r);
    GroundStationary[] gpGroundStationarys(string Country, double x, double y, double r);

  string gpTranslate(string msg, string language, int debugLevel);


Neue Klassen:
public interface GroundStationary
{
    // Methods
    void Destroy();

    // Properties
    string Category { get; }
    string country { get; }
    bool IsAlive { get; }
    Point3d pos { get; }
    string Title { get; }
    AiGroundActorType Type { get; }
}

public class GroundBombExplosion
{
    // Fields
    public double Mass;
    public Point3d pos;
    public string Title;

    // Methods
    public GroundBombExplosion();
}

public class GroundBuilding
{
    // Fields
    public Point3d pos;
    public string Title;

    // Methods
    public GroundBuilding();
}

Da hab ich ja einiges zum Ausproblieren  8)

Offline ulyssesOne

  • Blasenteetrinker
  • *****
  • Beiträge: 970
  • No Panic !!!
Re: [Scripting for Dummies RELOADED] - Vorbereitungen
« Antwort #24 am: 30.Juni.2012, 11:49 »
Klär mal die Dummies unter uns auf? Bitte.

Man kann jetzt verschiedene Objekte zum Beispiel zeit- oder "Trigger-gesteuert zerstören. Beispielsweise, bei fehlender Zielerreichung explodiert Schlachtschiff XY? Naja ... man merkt es, mit den Codes kann ich wenig anfangen.  ???
We ask you to react professionally – exactly this type of reaction will help us to fix everything as soon as possible.

Offline Nephris

  • Blasenteetrinker
  • *****
  • Beiträge: 1.309
Re: [Scripting for Dummies RELOADED] - Vorbereitungen
« Antwort #25 am: 30.Juni.2012, 12:51 »
Mich düngt es ist nun möglich statische Obkjekte wie zerstörte Gebäude auszuwerten.
Anwenderbsp.: Fliegen Sie einen Einstz auf London und bomben den BigBen in Grund und Boden./ Zerstören Sie die Brücke XYZ.
« Letzte Änderung: 30.Juni.2012, 12:58 von Nephris »

Offline FG28_Kodiak

  • Blasenteetrinker
  • *****
  • Beiträge: 1.893
Re: [Scripting for Dummies RELOADED] - Vorbereitungen
« Antwort #26 am: 30.Juni.2012, 14:53 »
Klär mal die Dummies unter uns auf? Bitte.

Man kann jetzt verschiedene Objekte zum Beispiel zeit- oder "Trigger-gesteuert zerstören. Beispielsweise, bei fehlender Zielerreichung explodiert Schlachtschiff XY? Naja ... man merkt es, mit den Codes kann ich wenig anfangen.  ???

Das Destroy() bedeutet das sich das Objekt per Skript sozusagen "löschen" lässt, d.h. man entfernt es aus dem Spiel. Da es ja irgendwann  ::) mal möglich sein soll einen Server 24/7 laufen zu lassen, muss man ihn sozusagen ab und zu entrümpeln, da sonst mit der Zeit immer mehr Objekte erzeugt werden (jedes mal wenn eine Submission geladen wird) und das natürlich dann den Speicherbedarf immer mehr erhöht und gegebenenfalls auch die Spielgeschwindigkeit beeinträchtigt. Bislang war es nur möglich Aktoren (alles was sich bewegt oder eine gesonderte Funktion hat) aus dem Spiel zu entfernen, statische Objekte, wie z.B. Sandsäcke, geparkte Autos etc konnte man leider bisher nicht entfernen, so dass man die Karte nie komplett freimachen konnte und mit der Zeit ein Neustart des Servers erforderlich war. Das entfernen statischer Objekte ist nun halt möglich. Auch kann man jetzt feststellen ob ein Statisches Objekt zerstört wurde und durch wen, bislang musste man immer einen TDestroyGround Trigger setzen um festzustellen wann ein statisches Objekt zerstört wurde, auch war dies nicht bei allen Static möglich. Auch hat man jetzt die Möglichkeit festzustellen ob ein Gebäude und durch wen zerstört wurde. Damit hat man etwa die Möglichkeit Missionen zu basteln, wie "Zerstören sie das Gestapo-Hauptquartier in SoWieSo, vermeiden sie aber auf jeden Fall die Zerstörung des nahe gelegenen Krankenhauses" etc.

Offline ulyssesOne

  • Blasenteetrinker
  • *****
  • Beiträge: 970
  • No Panic !!!
Re: [Scripting for Dummies RELOADED] - Vorbereitungen
« Antwort #27 am: 30.Juni.2012, 15:11 »
Danke.  :)
We ask you to react professionally – exactly this type of reaction will help us to fix everything as soon as possible.

Offline JG2001_Eule

  • Flugschüler
  • ***
  • Beiträge: 57
Re: [Scripting for Dummies RELOADED] - Vorbereitungen
« Antwort #28 am: 31.August.2012, 14:07 »
Hallo Kodiak
Ich habe mal eine bescheidene Bitte (Hoffe ich). Wie kann ich in Missionen die Trigger so einstellen, das Sie nur einmal ausgelöst werden.
Suche immer noch einen anständigen Grundkurs für C++, das empfohlene Buch hab ich zwar, brauch aber noch eine Grundlerneinheit, mir fehlt halt die Basis.
Es sind ganz normale Missionen ohne Wertung oder Gewinn oder Ziel verfehlt Angaben. Möchte nur nicht das immer neue Maschinen aufpoppen, wenn der Triggerkreis  zum zweitenmal durchflogen wird. Wäre schön wenn du Zeit hättest.
Gruß Eule

Offline Roni86

  • Hallenfeger
  • **
  • Beiträge: 38
Re: [Scripting for Dummies RELOADED] - Vorbereitungen
« Antwort #29 am: 31.August.2012, 18:08 »
Setz beim ersten Auslösen des Triggers eine Variabel und frag diese immer wieder ab.

Gruß
Roni
 

Offline JG2001_Eule

  • Flugschüler
  • ***
  • Beiträge: 57
Re: [Scripting for Dummies RELOADED] - Vorbereitungen
« Antwort #30 am: 31.August.2012, 22:53 »
Hallo Kodiak.
Suche immer noch einen anständigen Grundkurs für C++, das empfohlene Buch hab ich zwar, brauch aber noch eine Grundlerneinheit, mir fehlt halt die Basis.

Hallo Roni
das war ja meine Frage : Wie geht das Variabelen einfügen
Trotdem Danke
Gruß Eule

Offline Der Depp

  • Flugschüler
  • ***
  • Beiträge: 121
Re: [Scripting for Dummies RELOADED] - Vorbereitungen
« Antwort #31 am: 01.September.2012, 00:44 »
Suche immer noch einen anständigen Grundkurs für C++, das empfohlene Buch hab ich zwar, brauch aber noch eine Grundlerneinheit, mir fehlt halt die Basis.


Ich nehme an Du suchst eine Grundkurs für C#.

Mir hat dieser Kurs sehr weitergeholfen:
http://www.techotopia.com/index.php/C_Sharp_Essentials

Für mich war dieser Crashkurs genau das Richtige, ein paar Seiten gelesen und schon konnte ich mit C# arbeiten. Für die Feinheiten bzw. speziellere Probleme muß man dann allerdings weiterführende Literatur bemühen.

Offline Roni86

  • Hallenfeger
  • **
  • Beiträge: 38
Re: [Scripting for Dummies RELOADED] - Vorbereitungen
« Antwort #32 am: 01.September.2012, 14:46 »
Hallo Roni
das war ja meine Frage : Wie geht das Variabelen einfügen
Trotdem Danke

Hi Eule,

schalte den Trigger wenn er aktiviert wurde aus.
    GamePlay.gpGetTrigger(shortName).Enable = false;

Das hilft.

using System;
using maddox.game;
using maddox.game.world;


public class Mission : maddox.game.AMission
{

public override void OnTrigger(int missionNumber, string shortName, bool active)
    {
        base.OnTrigger(missionNumber, shortName, active);
GamePlay.gpHUDLogCenter(shortName);

        AiAction Action = GamePlay.gpGetAction(shortName);

        if (Action != null)
            Action.Do();
       
        GamePlay.gpGetTrigger(shortName).Enable = false;
    }

}

Gruß Roni

Offline JG2001_Eule

  • Flugschüler
  • ***
  • Beiträge: 57
Re: [Scripting for Dummies RELOADED] - Vorbereitungen
« Antwort #33 am: 01.September.2012, 14:49 »
Danke für den Hinweis "Der Deep", aber leider in very british. Ist nicht meine Sprache und schon gar nicht meine Stärke. Mein Schulenglisch wurde 1971 abrupt durch Ende der Schulzeit beendet. Ist schon ein paar Tage her. Kann zwar Grundnahrungsmittel im Lokal bestellen, also Urlaubsenglisch aber das reicht leider nicht für dein vorgeschlagenen Grundkurs. Höre mich weiter um.
Gruß Eule

Offline JG2001_Eule

  • Flugschüler
  • ***
  • Beiträge: 57
Re: [Scripting for Dummies RELOADED] - Vorbereitungen
« Antwort #34 am: 01.September.2012, 14:50 »
Danke Roni, das habe ich gemeint :-*
Gruß Eule

Offline JG2001_Eule

  • Flugschüler
  • ***
  • Beiträge: 57
Re: [Scripting for Dummies RELOADED] - Vorbereitungen
« Antwort #35 am: 01.September.2012, 19:51 »
Roni noch ne Frage, wie merkt das System den wenn ich mehr als einen Trigger setze, reicht es dann aus alles kopieren und nur den Trigger umbenennen also z.B Trigger_1? Also hinter Base onTrigger_1
Gruß Eule