1. News
  2. Community
    1. Dashboard
    2. Mitglieder
      1. Mitgliedersuche
      2. EM-Hub Team
    3. FAQ
  3. Filebase
  4. Lexikon
  5. Img-Upload
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Artikel
  • Seiten
  • Forum
  • Dateien
  • Lexikon
  • FAQ
  • Galerie
  • Modding Team
  • Modding Teamseiten
  • Erweiterte Suche
  1. Emergency Hub
  2. EMERGENCY Reihe
  3. EMERGENCY 4
  4. Modding

VCmdInstallCrane Script

  • Firefighter1790
  • 10. September 2024 um 09:47
Derzeit kommt es vermehrt zu automatisierten Registrierungen und Spam-Beiträgen. Dadurch kann es vereinzelt zu unerwünschten Inhalten kommen. Wir arbeiten bereits an technischen Maßnahmen, um dies zu unterbinden. Übergangsweise werden neu registrierte Nutzer einer eingeschränkten Benutzergruppe zugewiesen, mit der keine neuen Themen erstellt werden können. Nach dem Hochladen eines Avatars wird die Einschränkung nach rund 10 Minuten automatisch aufgehoben. Danke für euer Verständnis und eure Geduld.

Jetzt Mitglied werden!

Du bist noch kein Emergency Hub Member? Registriere dich kostenlos und werde Teil der Emergency Hub Community :)

Benutzerkonto erstellen Anmelden
  • Firefighter1790
    Aktives Mitglied
    Reaktionen
    124
    Beiträge
    48
    Dateien
    12
    • 10. September 2024 um 09:47
    • #1

    Hallo zusammen,

    ich hab mal paar fragen zum VCmdInstallCrane von BFE was müsste man da alles ändern das man es für eine DLK benutzen könnte ls für ein Kran.

    MfG

    Code
    //
    // InstallCrane (Auf-/Abbau RW-Kran)
    //
    
    object VCmdInstallCrane : CommandScript
    {
    	VCmdInstallCrane()
     	{
     		SetIcon("Install");
     		SetCursor("Install");
     		SetRestrictions(RESTRICT_SELFEXECUTE);
     	}
    
    	bool CheckPossible(GameObject *Caller)
    	{
    		Vehicle v(Caller);
    		if (v.GetNumPassengers() == 0) return false;
    		if (Caller->GetType() != ACTOR_VEHICLE || !Caller->HasCommand("ALARM_DUMMY")) return false;
    		return true;
    	}
    
     	bool CheckTarget(GameObject *Caller, Actor *Target, int childID)
     	{
     		return true;
     	}
    
    	void PushActions(GameObject *Caller, Actor *Target, int childID)
     	{
    		float r[9]; Vehicle v(Caller);
    		switch (childID)
    		{
    			case 0:
    				if (!v.IsSpecialLightEnabled()) v.PushActionExecuteCommand(ACTION_APPEND, "VCmdWarning", &v, 0, false);
    				if (v.HasCommand("DummyHasSiren")) v.PushActionExecuteCommand(ACTION_APPEND, "VcmdSiren", &v, 0, false);
    				v.SetCommandable(false);
    				v.PushActionSwitchAnim(ACTION_NEWLIST, "aufbau");
    				v.PushActionWait(ACTION_APPEND, 8.0f);
    				v.GetRotation(r[0], r[1], r[2], r[3], r[4], r[5], r[6], r[7], r[8]);
    				v.PushActionExecuteCommand(ACTION_APPEND, "VCmdInstallCrane", Target, 1, false);
    				break;
    			case 1:
    				Vehicle k = Game::CreateVehicle("mod:Prototypes/Vehicles/__FF_Wolfshain/04_36_02.e4p", v.GetName());
    				k.SetMaxPassengers(3);
    				PersonList l = v.GetPassengers();
    				for(int i=0; i<l.GetNumPersons(); i++) {
    					Person p = Game::CreatePerson(l.GetPerson(i)->GetPrototypeFileName(), l.GetPerson(i)->GetName());
    					p.SetPlayerMP(v.GetPlayerMP());	
    					k.AddPassenger(&p);
    				}
    				k.SetPlayerMP(v.GetPlayerMP());		
    				if (v.IsSelected()) k.Select();
    				v.GetRotation(r[0], r[1], r[2], r[3], r[4], r[5], r[6], r[7], r[8]);
    				k.SetPlayerMP(v.GetPlayerMP());
    				k.SetSpeed(v.GetSpeed());
    				k.SetPosition(v.GetPosition());
    				k.SetRotation(r[0], r[1], r[2], r[3], r[4], r[5], r[6], r[7], r[8]);
    				k.EnableTrafficLight(TLT_NONE);
    				k.EnableBlinker(BLT_NONE);
    				k.PushActionExecuteCommand(ACTION_APPEND, "VCmdWarning", &k, 0, false);		
    				k.EnableHeadLights(true);  
     				if (!k.IsBlueLightEnabled()) k.PushActionExecuteCommand(ACTION_APPEND, "VCmdBlue", &k, 0, false);
    				k.RemoveCommand("GoHome");		
    				k.RemoveCommand("VCmdInit");
    				if (k.HasCommand("MoveTo")) k.RemoveCommand("MoveTo");
    				k.AssignCommand("DUMMY_INIT");
    				k.AssignCommand("VCmdDebug");
    				k.AssignCommand("VCmdWarning");
    				k.AssignCommand("VCmdBlue");
    				k.AssignCommand("VCmdLiMa");
    				if (!k.HasCommand("ALARM_DUMMY")) k.AssignCommand("ALARM_DUMMY");
    				if (k.HasCommand("VCmdInstallCrane")) k.RemoveCommand("VCmdInstallCrane");
    				if (!k.HasCommand("VCmdUninstallCrane")) k.AssignCommand("VCmdUninstallCrane");
    				v.PushActionWait(ACTION_APPEND, 0.1f);
    				v.PushActionDeleteOwner(ACTION_APPEND);		
    				break;
    		}
    	}
    };
    
    object VCmdUninstallCrane : CommandScript
    {
    	VCmdUninstallCrane()
     	{
     		SetIcon("Deinstall");
     		SetCursor("Deinstall");
     		SetRestrictions(RESTRICT_SELFEXECUTE);
     	}
    
    	bool CheckPossible(GameObject *Caller)
    	{
    		Vehicle v(Caller);
    		if (v.GetNumPassengers() == 0) return false;
    		if (Caller->GetType() != ACTOR_VEHICLE || !Caller->HasCommand("ALARM_DUMMY")) return false;	
    		GameObjectList ol = Caller->GetCarriedObjects();
    		if(ol.GetNumObjects() > 0) return false;
    		return true;
    	}
    
     	bool CheckTarget(GameObject *Caller, Actor *Target, int childID)
     	{
     		return true;
     	}
    
    	void PushActions(GameObject *Caller, Actor *Target, int childID)
     	{
    		float r[9]; Vehicle v(Caller);
    		switch (childID)
    		{
    			case 0:
    				if (!v.IsSpecialLightEnabled()) v.PushActionExecuteCommand(ACTION_APPEND, "VCmdWarning", &v, 0, false);
    				if (v.HasCommand("DummyHasSiren")) v.PushActionExecuteCommand(ACTION_APPEND, "VcmdSiren", &v, 0, false);
    				v.SetCommandable(false);
    				v.GetRotation(r[0], r[1], r[2], r[3], r[4], r[5], r[6], r[7], r[8]);
    				v.PushActionExecuteCommand(ACTION_APPEND, "VCmdUninstallCrane", Target, 1, false);
    				break;
    			case 1:
    				Vehicle k = Game::CreateVehicle("mod:Prototypes/Vehicles/__FF_Wolfshain/04_36_01.e4p", v.GetName());
    				k.SetMaxPassengers(3);
    				PersonList l = v.GetPassengers();
    				for(int i=0; i<l.GetNumPersons(); i++) {
    					Person p = Game::CreatePerson(l.GetPerson(i)->GetPrototypeFileName(), l.GetPerson(i)->GetName());
    					p.SetPlayerMP(v.GetPlayerMP());	
    					k.AddPassenger(&p);
    				}
    				k.SetPlayerMP(v.GetPlayerMP());		
    				if (v.IsSelected()) k.Select();
    				v.GetRotation(r[0], r[1], r[2], r[3], r[4], r[5], r[6], r[7], r[8]);
    				k.SetPlayerMP(v.GetPlayerMP());
    				k.SetSpeed(v.GetSpeed());
    				k.SetPosition(v.GetPosition());
    				k.SetRotation(r[0], r[1], r[2], r[3], r[4], r[5], r[6], r[7], r[8]);
    				k.EnableTrafficLight(TLT_NONE);
    				k.EnableBlinker(BLT_NONE);
    				k.PushActionExecuteCommand(ACTION_APPEND, "VCmdWarning", &k, 0, false);
    				k.PushActionSwitchAnim(ACTION_NEWLIST, "abbau");
    				k.PushActionWait(ACTION_APPEND, 8.0f);		
    				k.EnableHeadLights(true);  
     				if (!k.IsBlueLightEnabled()) k.PushActionExecuteCommand(ACTION_APPEND, "VCmdBlue", &k, 0, false);
    				k.RemoveCommand("GoHome");		
    				k.RemoveCommand("VCmdInit");
    				k.AssignCommand("MoveTo");
    				k.AssignCommand("DUMMY_INIT");
    				k.AssignCommand("VCmdDebug");
    				k.AssignCommand("VCmdWarning");
    				k.AssignCommand("VCmdBlue");
    				k.AssignCommand("VCmdAlarm");
    				k.AssignCommand("VCmdParking");
    				k.AssignCommand("VcmdEinsteigen");
    				k.AssignCommand("VCmdLiMa");
    				k.AssignCommand("FahrzeugPosition");
    				k.AssignCommand("DummyHasBesen");
    				if (!k.HasCommand("ALARM_DUMMY")) k.AssignCommand("ALARM_DUMMY");
    				if (!k.HasCommand("VCmdInstallCrane")) k.AssignCommand("VCmdInstallCrane");
    				if (k.HasCommand("VCmdUninstallCrane")) k.RemoveCommand("VCmdUninstallCrane");
    				v.PushActionWait(ACTION_APPEND, 0.1f);
    				v.PushActionDeleteOwner(ACTION_APPEND);		
    				break;
    		}
    	}
    };
    Alles anzeigen

Letzte Beiträge

  • Problem mit Wasserlogik

    Fynn Freihöfer 25. März 2026 um 15:51
  • Sub mod zur Fuchsburg

    BF Saarbrücken 25. März 2026 um 09:28
  • Scam/Spam Accounts LÖSUNG?!

    Loeschi 24. März 2026 um 20:42
  • Zeigt her Eure 3D-Basteleien

    D4rk_Bone 23. März 2026 um 15:59
  • Modgröße

    Antiphon 23. März 2026 um 00:20

Forum online seit:

2 Jahren, 4 Monaten, 2 Wochen, 23 Stunden und 28 Minuten

Benutzer online in diesem Thema

  • 1 Besucher

Informationen

  1. FAQ
  2. Datenschutzerklärung
  3. Impressum

Community

  1. Letzte Aktivitäten
  2. Mitgliedersuche
  3. Mitglieder
  4. Team

Über uns

Ein Communityprojekt von vielen bekannten Gesichtern aus der EMERGENCY-Szene, bestehend aus ehem. Mitgliedern des Forums, Moddern und Streamern.

Von der Community, für die Community!

Emergency Hub
Community-Software: WoltLab Suite™
Style by Foxly