annuncio

Comprimi
Ancora nessun annuncio.

[SCRIPT] Large Weapon BODs

Comprimi
X
 
  • Filtro
  • Ora
  • Visualizza
Elimina tutto
nuovi messaggi

  • [SCRIPT] Large Weapon BODs

    Scripts/Engines/BulkOrders/LargeBulkEntry.cs, riga 33, aggiungere:
    codice:
    public static SmallBulkEntry[] LargeAxes
    {
    get{ return GetEntries( "Blacksmith", "largeaxes" ); }
    }
    
    public static SmallBulkEntry[] LargeFencing
    {
      get{ return GetEntries( "Blacksmith", "largefencing" ); }
    }
    
    public static SmallBulkEntry[] LargeMaces
    {
      get{ return GetEntries( "Blacksmith", "largemaces" ); }
    }
    
    public static SmallBulkEntry[] LargePolearms
    {
      get{ return GetEntries( "Blacksmith", "largepolearms" ); }
    }
    
    public static SmallBulkEntry[] LargeSwords
    {
      get{ return GetEntries( "Blacksmith", "largeswords" ); }
    }
    Scripts/Engines/BulkOrders/LargeSmithBOD.cs, modificare:

    codice:
    bool useMaterials = true;
    switch ( Utility.Random( 4 ) )
    {
      default:
      case  0: entries = LargeBulkEntry.ConvertEntries( this, LargeBulkEntry.LargeRing );  break;
      case  1: entries = LargeBulkEntry.ConvertEntries( this, LargeBulkEntry.LargePlate ); break;
      case  2: entries = LargeBulkEntry.ConvertEntries( this, LargeBulkEntry.LargeChain ); break;
    }
    con:
    codice:
    bool useMaterials;
    
    switch ( Utility.Random( 8 ) )
    {
      default:
      case  0: entries = LargeBulkEntry.ConvertEntries( this, LargeBulkEntry.LargeRing ); useMaterials = true; break;
      case  1: entries = LargeBulkEntry.ConvertEntries( this, LargeBulkEntry.LargePlate ); useMaterials = true; break;
      case  2: entries = LargeBulkEntry.ConvertEntries( this, LargeBulkEntry.LargeChain ); useMaterials = true; break;
      case  3: entries = LargeBulkEntry.ConvertEntries( this, LargeBulkEntry.LargeAxes ); useMaterials = false; break;
      case  4: entries = LargeBulkEntry.ConvertEntries( this, LargeBulkEntry.LargeFencing ); useMaterials = false; break;
      case  5: entries = LargeBulkEntry.ConvertEntries( this, LargeBulkEntry.LargeMaces ); useMaterials = false; break;
      case  6: entries = LargeBulkEntry.ConvertEntries( this, LargeBulkEntry.LargePolearms ); useMaterials = false; break;
      case  7: entries = LargeBulkEntry.ConvertEntries( this, LargeBulkEntry.LargeSwords ); useMaterials = false; break;
    }
    Scripts/Engines/BulkOrders/Rewards.cs, modificare:
    codice:
    private RewardType[] m_Types = new RewardType[]
    {
      new RewardType( 200, typeof( RingmailGloves ), typeof( RingmailChest ), typeof( RingmailArms ), typeof( RingmailLegs ) ),
      new RewardType( 200, typeof( Bardiche ), typeof( Halberd ) ),
      new RewardType( 300, typeof( ChainCoif ), typeof( ChainLegs ), typeof( ChainChest ) ),
      new RewardType( 300, typeof( Axe ), typeof( BattleAxe ), typeof( DoubleAxe ), typeof( ExecutionersAxe ), typeof( LargeBattleAxe ), typeof( TwoHandedAxe ) ),
      new RewardType( 300, typeof( Broadsword ), typeof( Cutlass ), typeof( Katana ), typeof( Longsword ), typeof( Scimitar ), typeof( ThinLongsword ), typeof( VikingSword ) ),
      new RewardType( 300, typeof( WarAxe ), typeof( HammerPick ), typeof( Mace ), typeof( Maul ), typeof( WarHammer ), typeof( WarMace ) ),
      new RewardType( 350, typeof( ShortSpear ), typeof( Spear ), typeof( WarFork ), typeof( Kryss ) ),
      new RewardType( 400, typeof( PlateArms ), typeof( PlateLegs ), typeof( PlateHelm ), typeof( PlateGorget ), typeof( PlateGloves ), typeof( PlateChest ) )
    };
    con:
    codice:
    private RewardType[] m_Types = new RewardType[]
    {
      // Armors
      new RewardType( 200, typeof( RingmailGloves ), typeof( RingmailChest ), typeof( RingmailArms ), typeof( RingmailLegs ) ),
      new RewardType( 300, typeof( ChainCoif ), typeof( ChainLegs ), typeof( ChainChest ) ),
      new RewardType( 400, typeof( PlateArms ), typeof( PlateLegs ), typeof( PlateHelm ), typeof( PlateGorget ), typeof( PlateGloves ), typeof( PlateChest ) ),
    
      // Weapons
      new RewardType( 200, typeof( Bardiche ), typeof( Halberd ) ),
      new RewardType( 300, typeof( Dagger), typeof( ShortSpear ), typeof( Spear ), typeof( WarFork ), typeof( Kryss ) ),
      new RewardType( 350, typeof( Axe ), typeof( BattleAxe ), typeof( DoubleAxe ), typeof( ExecutionersAxe ), typeof( LargeBattleAxe ), typeof( TwoHandedAxe ) ),
      new RewardType( 350, typeof( Broadsword ), typeof( Cutlass ), typeof( Katana ), typeof( Longsword ), typeof( Scimitar ), typeof( ThinLongsword ), typeof( VikingSword ) ),
      new RewardType( 350, typeof( WarAxe ), typeof( HammerPick ), typeof( Mace ), typeof( Maul ), typeof( WarHammer ), typeof( WarMace ) )
    };
    Aggiungere nella m_GoldTable:
    codice:
    new int[][] // 2-part weapons (regular)
    {
      new int[]{ 3000, 0, 0, 0, 0, 0, 0, 0, 0 },
      new int[]{ 4500, 0, 0, 0, 0, 0, 0, 0, 0 },
      new int[]{ 6000, 0, 0, 0, 0, 0, 0, 0, 0 }
    },
    new int[][] // 2-part weapons (exceptional)
    {
      new int[]{ 5000, 0, 0, 0, 0, 0, 0, 0, 0 },
      new int[]{ 7500, 0, 0, 0, 0, 0, 0, 0, 0 },
      new int[]{ 10000, 0, 0, 0, 0, 0, 0, 0, 0 }
    },
    new int[][] // 5-part weapons (regular)
    {
      new int[]{ 4000, 0, 0, 0, 0, 0, 0, 0, 0 },
      new int[]{ 6000, 0, 0, 0, 0, 0, 0, 0, 0 },
      new int[]{ 8000, 0, 0, 0, 0, 0, 0, 0, 0 }
    },
    new int[][] // 5-part weapons (exceptional)
    {
      new int[]{ 7500, 0, 0, 0, 0, 0, 0, 0, 0 },
      new int[]{ 11250, 0, 0, 0, 0, 0, 0, 0, 0 },
      new int[]{ 15000, 0, 0, 0, 0, 0, 0, 0, 0 }
    },
    new int[][] // 6-part weapons (regular)
    {
      new int[]{ 4000, 0, 0, 0, 0, 0, 0, 0, 0 },
      new int[]{ 6000, 0, 0, 0, 0, 0, 0, 0, 0 },
      new int[]{ 10000, 0, 0, 0, 0, 0, 0, 0, 0 }
    },
    new int[][] // 6-part weapons (exceptional)
    {
      new int[]{ 7500, 0, 0, 0, 0, 0, 0, 0, 0 },
      new int[]{ 11250, 0, 0, 0, 0, 0, 0, 0, 0 },
      new int[]{ 15000, 0, 0, 0, 0, 0, 0, 0, 0 }
    }
    Subito sotto aggiungere questo metodo:
    codice:
    private int ComputeType( Type type, int itemCount )
    {
      // Item count of 1 means it's a small BOD.
      if ( itemCount == 1 )
        return 0;
    
      int typeIdx;
    
      // Loop through the RewardTypes defined earlier and find the correct one.
      for ( typeIdx = 0; typeIdx < 7; ++typeIdx )
      {
        if ( m_Types[typeIdx].Contains( type ) )
          break;
      }
    
      // Types 5, 6 and 7 are Large Weapon BODs with the same rewards.
      if ( typeIdx > 5 )
        typeIdx = 5;
    
      return ( typeIdx + 1 ) * 2;
    }
    Nel metodo ComputeGold subito sotto, modificare:
    codice:
    int typeIndex = (( itemCount == 1 ? 0 : m_Types[7].Contains( type ) ? 3 : m_Types[2].Contains( type ) ? 2 : 1 ) * 2) + (exceptional ? 1 : 0);
    con:
    codice:
    int typeIndex = ComputeType( type, itemCount );
    E prima di:
    codice:
    int gold = goldTable[typeIndex][quanIndex][mtrlIndex];
    Aggiungere:
    codice:
    if ( exceptional )
      typeIndex++;
    Per far funzionare il tutto occorre modificare il file Data/Bulk Orders/Blacksmith/weapons.cfg aggiungendo:
    codice:
    Dagger    0x0F52
    E inoltre aggiungere questi files nella stessa directory.

    Tutti i dati aggiornati a quanto riportato su Tower of Roses.
    Si scrive Felucca, non Felluca o Fellucca!

  • #2
    Ma quanto rulla Raphsody? :0

    Commenta


    • #3
      Raphsody sei un mito!
      Originally posted by Iris
      Che eresia, Voldemort e' un maledetto lamer e ha sempre torto, anche quando dorme.
      Mappa Nox
      K: cmq punk has slogged
      K: all aot are in coma now

      Commenta


      • #4
        complimenti, davvero una forza ^_^
        è una modifica interessante, spero venga fatta presto =)

        Commenta


        • #5
          Ficcate Rhapsody nello staff, niente discussioni.

          Commenta


          • #6
            Ma sei un mito!!

            Commenta


            • #7
              bello !!!

              Commenta


              • #8
                Direi che lo staff, se vuole, ha trovato un altro scripter

                Commenta

                Sto operando...
                X