Absoluter Neuling hat ein Umsetzungsproblem

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Absoluter Neuling hat ein Umsetzungsproblem

    Hallo,

    ich spiele das Browsergame Syndicates. Für dieses Game gab es immer einen Angriffsrechner, bis der Entwickler aufgehört hat zu spielen. Ich habe den Rechner jetzt soweit für die neue Runde angepasst. Ich habe einen neuen Konzerntyp usw. eingebaut. Ging durch Copy & Paste recht simpel. Hab nämlich eigentlich keien Ahnung von PHP aber jeder hat mal angefangen^^


    Erstmal Grundlegendes zu dem Spiel:

    Es gibt 4 verschiedene Fraktionen:

    BF
    UIC
    SL
    NEB

    Die ersten drei gab es schon immer, NEB ist jetzt neu hinzugekommen. Jede Fraktion hat konzernspezifische Einheiten. BF besitzt z.B. Wartanks, Strike Fighter usw.

    Erklärung der Einheiten und Name Anhand des Konzerntyps BF im Quellcode:

    Marines = marine
    Ranger = ranger
    Wartank = elite1
    Strike Fighter = elite2
    Titan = elite3

    Dieser neue Konzerntyp (NEB) hat nun eine Einheit die folgendes macht:

    EMP Cannon

    1. Angriffspunkte: 0
    2. Verteidigungspunkte: 1
    3. Kosten: 925 t, 750 MWh, 200 P
    4. Eigenschaften: Jede EMP Cannon neutralisiert im Kampf die Angriffspunkte einer gegnerischen Einheit, angefangen mit den stärksten gegnerischen Einheiten nach Verrechnung aller Boni.

    Genau um Punkt 4 geht es. Das heißt also im Klartext:

    Greift ein BF z.B. mit

    100 Wartanks
    150 Strike Fightern
    200 Titanen

    an und besitzt NEB

    250 EMP Cannons

    werden also angefangen bei den stärksten gegnerischen Einheiten 250 abgezogen.

    Das beudeutet also das der BF nur noch mit

    100 Wartanks
    100 Strike Fightern

    angreift.

    Es gibt jetzt für jeden Konzerntyp zwei PHP Datein. In der einen Datei (z.B. defNEB.php) wird die Defensivkraft ausgerechnet. In der anderen ( z.B. attNEB.php) wird die Offensivkraft ausgerechnet.

    Ich muss jetzt also irgendwie in die Defensivdatei von NEB reinbringen das von dem Angreifer die jeweils stärksten Einheiten abgezogen werden.

    Jo, leider habe ich überhaupt keien ahnung wie ich das machen soll.


    Hier mal der Quelltext der Datei defNEB.php (die Verteidiger)

    PHP-Code:
    <?php
    if($krieg ==1){
      if(
    $tmp_v_ranger $verteidiger_syn_ranger){
      
    $tmp_v_ranger=$tmp_v_ranger 2;
      
    $anz_syn_ranger $tmp_v_ranger 2;
      }else{
      
    $tmp_v_ranger$tmp_v_ranger $verteidiger_syn_ranger;
      }
      
    $anz_syn_ranger $tmp_v_ranger 2;
      
    $anz_syn_ranger $verteidiger_syn_ranger;
      
      
      if(
    $verteidiger_forschung_fs ==1){
      if(
    $tmp_v_marine $verteidiger_syn_marine){
      
    $tmp_v_marine=$tmp_v_marine 2;
      
    $anz_syn_marine $tmp_v_marine 2;
      }else{
      
    $tmp_v_marine$tmp_v_marine $verteidiger_syn_marine;
      }
      
    $anz_syn_marine $tmp_v_marine 2;
      
    $anz_syn_marine $verteidiger_syn_marine;
    }}

    if(
    $verteidiger_forschung_fs==1){
      
    $VPMarine=$tmp_v_marine*5;
    }else{
      
    $VPMarine=0;
    }



    $VPRanger=$tmp_v_ranger*(8+$verteidiger_forschung_rmt $verteidiger_forschung_ru*2);

    ### Anfang Verteidigungspunkte der Einheit Elite1 (Anzahl der Einheiten * 6) ###

    $VPPatriot=$tmp_v_elite1*6;

    ### Anfang Verteidigungspunkte der Einheit Elite2 (Anzahl der Einheiten * 13) ###

    $VPPhoenix=$tmp_v_elite2*13;

    ### Anfang Verteidigungspunkte der Einheit Elite3 (Anzahl der
    ### Einheiten * 1 / Jede EMP Nannon neutralisiert im Kampf die
    ### Angrissfpunkte einer gegnerischen Einheit! Wie rechen ich das??) ###

    $VPCannon $tmp_v_elite3*1;




    $gesamt $VPMarine $VPRanger $VPPatriot $VPPhoenix $VPCannon;

    $VPElite1 $VPPatriot;
    $VPElite2 $VPPhoenix;
    $VPElite3 $VPCannon;

    $forts_bonus = ($verteidiger_forts $verteidiger_land 100)*2.5;

    if (
    $forts_bonus>50){

      
    $forts_bonus=50;

    }


    $Bonus_bdt $verteidiger_forschung_bdt*5;

    $Bonus_dn $verteidiger_forschung_dn*5;

    $Bonus_ods $verteidiger_forschung_ods*5;



    $prozentbonus_gesamt $Bonus_bdt $Bonus_dn $Bonus_ods $forts_bonus;
    $prozentbonus_gesamt2 = ($gesamt 100 $prozentbonus_gesamt);


    $vp $gesamt + ($gesamt 100 $prozentbonus_gesamt);
    if(
    $vp<$verteidiger_land*2){
    $vp$verteidiger_land*2;
    }
    ?>


    Jetzt die Datei attBF.php (die der Angreifer):


    PHP-Code:
    <?php

    $tmp_marine 
    $angreifer_marine;
    $tmp_ranger $angreifer_ranger;
    $tmp_def_ranger $verteidiger_ranger;
    $tmp_elite1 $angreifer_elite1;
    $tmp_elite2 $angreifer_elite2;
    $tmp_elite3 $angreifer_elite3;
    $tmp_aussenposten $angreifer_aussenposten;


    if(
    $krieg ==1){
      if(
    $tmp_marine $angreifer_syn_marine){
      
    $tmp_marine=$tmp_marine 2;
      
    $anz_syn_marine $tmp_marine 2;
      }else{
      
    $tmp_marine$tmp_marine $angreifer_syn_marine;
      }
      
    $anz_syn_marine $tmp_marine 2;
      
    $anz_syn_marine $angreifer_syn_marine;
      
      if(
    $angreifer_forschung_fs ==1){
      if(
    $tmp_ranger $angreifer_syn_ranger){
      
    $tmp_ranger=$tmp_ranger 2;
      
    $anz_syn_ranger $tmp_ranger 2;
      }else{
      
    $tmp_ranger$tmp_ranger $angreifer_syn_ranger;
      }
      
    $anz_syn_ranger $tmp_ranger 2;
      
    $anz_syn_ranger $angreifer_syn_ranger;
    }}

    #MARINE - Anfang
    $tmp_marine_wert $tmp_marine*(12+$angreifer_forschung_rmt);
    #MARINE - Ende

    #RANGER - Anfang
    if($angreifer_forschung_fs=="1"){
    $tmp_ranger_wert $tmp_ranger*(5);
    }else{
    $tmp_ranger_wert 0;
    };
    #RANGER - Ende

    #ELITE 1 - Anfang
    $tmp_elite1_wert $tmp_elite1*(20);
    #ELITE 1 - Ende

    #ELITE 2 - Anfang
    if($tmp_elite2>$tmp_def_ranger){
    $tmp_elite2_wert $tmp_elite2 24  -  $tmp_def_ranger 6;
    }else{
    $tmp_elite2_wert $tmp_elite2 18;
    };
    #ELITE 2 - Ende

    #ELITE 3 - Anfang
    $tmp_elite3_wert $tmp_elite3*(20);

    if(
    $tmp_elite3>$tmp_marine/2){
    $tmp_bonus_titan $tmp_marine 3;
    }else{
    $tmp_bonus_titan = ($tmp_marine - ($tmp_marine $tmp_elite3 2)) * 3;
    };
    #ELITE 3 - Ende

    #Boni(Aussenposten) - Anfang
    $tmp_ap_bonus_1 = ($tmp_aussenposten $angreifer_land 100)*3;
    if (
    $tmp_ap_bonus_1>60){
      
    $tmp_ap_bonus_1=60;
    }
    #Boni(Aussenposten) - Ende

    #Boni(BOT) - Anfang
    $tmp_bot $angreifer_forschung_bot*5;
    #Boni(BOT) - Ende

    #Boni (IWT)- Anfang
    $tmp_iwt $angreifer_forschung_iwt*10;
    #Boni (IWT)- Ende

    #Zusammenzaehlen

    $tmp_units $tmp_marine_wert $tmp_ranger_wert $tmp_elite1_wert $tmp_elite2_wert $tmp_elite3_wert $tmp_bonus_titan;

    $tmp_malus $verteidiger_forschung_dn 5;
    $tmp_bonus $tmp_iwt $tmp_bot $tmp_ap_bonus_1 10;
    $tmp_marine_wert_a $tmp_marine_wert;
    $tmp_ranger_wert_a $tmp_ranger_wert;
    $tmp_elite1_wert_a $tmp_elite1_wert;
    $tmp_elite2_wert_a $tmp_elite2_wert;
    $tmp_elite3_wert_a $tmp_elite3_wert;


    $angreifer_bonus $tmp_bonus $tmp_malus;
    $angreifer_bonus2 = ($tmp_units 100 $tmp_bonus) - ($tmp_units 100 $tmp_malus);


    $ap $tmp_units + ($tmp_units 100 $tmp_bonus) - ($tmp_units 100 $tmp_malus) + $angreifer_ap_waffenlager;

    ?>
    Hm, ich hoffe das ich das irgendwie verständlich ausgedrückt habe. Wenn nicht einfach fragen.

    Ich hoffe das mir irgendjemand helfen kann, auch wenn es sicherlich schwer ist die Anforderung zu verstehen....

    Danke
    Zuletzt geändert von n18s; 24.05.2004, 22:46.

  • #2
    Hilfe?!?!

    Kommentar

    Lädt...
    X