Здравствуйте, гость ( Вход | Регистрация )

2 страниц V  1 2 >  
Ответить в эту темуОткрыть новую тему
> Много вопросов!
ZanozA
сообщение 31.10.2012, 13:36
Сообщение #1


***

Novice
Сообщений: 58
Регистрация: 11.10.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.367



1) Ест у кого то квест в норе, "на сопли"

2) Как у "Нору" с мобов убрать этот яд?

3) как Сделать чтобы статы расли на "Кампинге"
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
ZanozA
сообщение 31.10.2012, 14:48
Сообщение #2


***

Novice
Сообщений: 58
Регистрация: 11.10.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.367



Цитата(ZanozA @ 31.10.2012, 13:36) *

1) Ест у кого то квест в норе, "на сопли"


С этим разобрался!
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
M0rBiT
сообщение 31.10.2012, 19:25
Сообщение #3


********

Группа: Пользователи
Наличность: 5949
Пользователь №: 11.468



Цитата(ZanozA @ 31.10.2012, 14:36) *

1) Ест у кого то квест в норе, "на сопли"

2) Как у "Нору" с мобов убрать этот яд?

3) как Сделать чтобы статы расли на "Кампинге"


3) почему статы качаются на кемпинге?
Теория:
Когда суммскилл максимум ( например 700)
То просто юзается кемпинг, главное чтобы его значение было 0
так как суммскилл макс то кемпингу не куда расти, а при 0 навыка идет 100% физл, но действие как бы проходит и ветка не тратится. Статы растут от использования навыка.
Делай выводы
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
ZanozA
сообщение 31.10.2012, 20:18
Сообщение #4


***

Novice
Сообщений: 58
Регистрация: 11.10.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.367



Цитата(M0rBiT @ 31.10.2012, 19:25) *

3) почему статы качаются на кемпинге?
Теория:
Когда суммскилл максимум ( например 700)
То просто юзается кемпинг, главное чтобы его значение было 0
так как суммскилл макс то кемпингу не куда расти, а при 0 навыка идет 100% физл, но действие как бы проходит и ветка не тратится. Статы растут от использования навыка.
Делай выводы

Спасибо!
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
ZanozA
сообщение 2.11.2012, 11:04
Сообщение #5


***

Novice
Сообщений: 58
Регистрация: 11.10.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.367



Подскажите у меня на шарде стоит анти макрос.
Где он может лежать?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Soteric
сообщение 2.11.2012, 11:22
Сообщение #6


********

Master
Сообщений: 1.377
Регистрация: 7.8.2006
Группа: Пользователи
Наличность: 3060
Пользователь №: 7.166



Scripts\Misc\SkillCheck.cs
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
ZanozA
сообщение 2.11.2012, 11:48
Сообщение #7


***

Novice
Сообщений: 58
Регистрация: 11.10.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.367



(IMG:style_emoticons/default/laugh.gif)
Как его отключить?
Код
using Server;
using System;
using Server.Mobiles;
using Server.RateDef;
namespace Server.Misc
{
public class SkillCheck
{
                private static readonly bool AntiMacroCode = false;  //Change this to true to enable anti-macro code
  public static TimeSpan AntiMacroExpire = TimeSpan.FromMinutes( 5.0 ); //How long do we remember targets/locations?
  public const int Allowance = 3; //How many times may we use the same location/target for gain
  private const int LocationSize = 5; //The size of eeach location, make this smaller so players dont have to move as far
  private static bool[] UseAntiMacro = new bool[]
  {
   // true if this skill uses the anti-macro code, false if it does not
   false,// Alchemy = 0,
   true,// Anatomy = 1,
   true,// AnimalLore = 2,
   true,// ItemID = 3,
   true,// ArmsLore = 4,
   false,// Parry = 5,
   true,// Begging = 6,
   false,// Blacksmith = 7,
   false,// Fletching = 8,
   true,// Peacemaking = 9,
   true,// Camping = 10,
   false,// Carpentry = 11,
   false,// Cartography = 12,
   false,// Cooking = 13,
   true,// DetectHidden = 14,
   true,// Discordance = 15,
   true,// EvalInt = 16,
   true,// Healing = 17,
   true,// Fishing = 18,
   true,// Forensics = 19,
   true,// Herding = 20,
   true,// Hiding = 21,
   true,// Provocation = 22,
   false,// Inscribe = 23,
   true,// Lockpicking = 24,
   true,// Magery = 25,
   true,// MagicResist = 26,
   false,// Tactics = 27,
   true,// Snooping = 28,
   true,// Musicianship = 29,
   true,// Poisoning = 30,
   false,// Archery = 31,
   true,// SpiritSpeak = 32,
   true,// Stealing = 33,
   false,// Tailoring = 34,
   true,// AnimalTaming = 35,
   true,// TasteID = 36,
   false,// Tinkering = 37,
   true,// Tracking = 38,
   true,// Veterinary = 39,
   false,// Swords = 40,
   false,// Macing = 41,
   false,// Fencing = 42,
   false,// Wrestling = 43,
   true,// Lumberjacking = 44,
   true,// Mining = 45,
   true,// Meditation = 46,
   true,// Stealth = 47,
   true,// RemoveTrap = 48,
   true,// Necromancy = 49,
   false,// Focus = 50,
   true,// Chivalry = 51
                        true,// Bushido = 52
                        true,//Ninjitsu = 53
                        true // Spellweaving
  };
  public static void Initialize()
  {
   Mobile.SkillCheckLocationHandler = new SkillCheckLocationHandler( Mobile_SkillCheckLocation );
   Mobile.SkillCheckDirectLocationHandler = new SkillCheckDirectLocationHandler( Mobile_SkillCheckDirectLocation );
   Mobile.SkillCheckTargetHandler = new SkillCheckTargetHandler( Mobile_SkillCheckTarget );
   Mobile.SkillCheckDirectTargetHandler = new SkillCheckDirectTargetHandler( Mobile_SkillCheckDirectTarget );

//here is gainrates 4 each skill
//for instance .15 would be a 15% chance to gain in the particular skill

   SkillInfo.Table[0].GainFactor = .15;// Alchemy = 0,
   SkillInfo.Table[1].GainFactor = .15;// Anatomy = 1,
   SkillInfo.Table[2].GainFactor = .15;// AnimalLore = 2,
   SkillInfo.Table[3].GainFactor = .15;// ItemID = 3,
   SkillInfo.Table[4].GainFactor = .15;// ArmsLore = 4,
   SkillInfo.Table[5].GainFactor = .15;// Parry = 5,
   SkillInfo.Table[6].GainFactor = .15;// Begging = 6,
   SkillInfo.Table[7].GainFactor = .12;// Blacksmith = 7,
   SkillInfo.Table[8].GainFactor = .15;// Fletching = 8,
   SkillInfo.Table[9].GainFactor = .15;// Peacemaking = 9,
   SkillInfo.Table[10].GainFactor = .15;// Camping = 10,
   SkillInfo.Table[11].GainFactor = .15;// Carpentry = 11,
   SkillInfo.Table[12].GainFactor = .15;// Cartography = 12,
   SkillInfo.Table[13].GainFactor = .15;// Cooking = 13,
   SkillInfo.Table[14].GainFactor = .15;// DetectHidden = 14,
   SkillInfo.Table[15].GainFactor = .15;// Discordance = 15,
   SkillInfo.Table[16].GainFactor = .15;// EvalInt = 16,
   SkillInfo.Table[17].GainFactor = .15;// Healing = 17,
   SkillInfo.Table[18].GainFactor = .15;// Fishing = 18,
   SkillInfo.Table[19].GainFactor = .15;// Forensics = 19,
   SkillInfo.Table[20].GainFactor = .15;// Herding = 20,
   SkillInfo.Table[21].GainFactor = .15;// Hiding = 21,
   SkillInfo.Table[22].GainFactor = .15;// Provocation = 22,
   SkillInfo.Table[23].GainFactor = .15;// Inscribe = 23,
   SkillInfo.Table[24].GainFactor = .15;// Lockpicking = 24,
   SkillInfo.Table[25].GainFactor = .15;// Magery = 25,
   SkillInfo.Table[26].GainFactor = .15;// MagicResist = 26,
   SkillInfo.Table[27].GainFactor = .15;// Tactics = 27,
   SkillInfo.Table[28].GainFactor = .15;// Snooping = 28,
   SkillInfo.Table[29].GainFactor = .15;// Musicianship = 29,
   SkillInfo.Table[30].GainFactor = .15;// Poisoning = 30
   SkillInfo.Table[31].GainFactor = .15;// Archery = 31
   SkillInfo.Table[32].GainFactor = .15;// SpiritSpeak = 32
   SkillInfo.Table[33].GainFactor = .15;// Stealing = 33
   SkillInfo.Table[34].GainFactor = .12;// Tailoring = 34
   SkillInfo.Table[35].GainFactor = .15;// AnimalTaming = 35
   SkillInfo.Table[36].GainFactor = .15;// TasteID = 36
   SkillInfo.Table[37].GainFactor = .15;// Tinkering = 37
   SkillInfo.Table[38].GainFactor = .15;// Tracking = 38
   SkillInfo.Table[39].GainFactor = .15;// Veterinary = 39
   SkillInfo.Table[40].GainFactor = .15;// Swords = 40
   SkillInfo.Table[41].GainFactor = .15;// Macing = 41
   SkillInfo.Table[42].GainFactor = .15;// Fencing = 42
   SkillInfo.Table[43].GainFactor = .15;// Wrestling = 43
   SkillInfo.Table[44].GainFactor = .15;// Lumberjacking = 44
   SkillInfo.Table[45].GainFactor = .15;// Mining = 45
   SkillInfo.Table[46].GainFactor = .15;// Meditation = 46
   SkillInfo.Table[47].GainFactor = .15;// Stealth = 47
   SkillInfo.Table[48].GainFactor = .15;// RemoveTrap = 48
   SkillInfo.Table[49].GainFactor = .15;// Necromancy = 49
   SkillInfo.Table[50].GainFactor = .15;// Focus = 50
   SkillInfo.Table[51].GainFactor = .15;// Chivalry = 51
  }
  public static bool Mobile_SkillCheckLocation( Mobile from, SkillName skillName, double minSkill, double maxSkill )
  {
   Skill skill = from.Skills[skillName];
   if ( skill == null )
    return false;
   double value = skill.Value;
   if ( value < minSkill )
    return false; // Too difficult
   else if ( value >= maxSkill )
    return true; // No challenge
   double chance = (value - minSkill) / (maxSkill - minSkill);
   Point2D loc = new Point2D( from.Location.X / LocationSize, from.Location.Y / LocationSize );
   return CheckSkill( from, skill, loc, chance );
  }
  public static bool Mobile_SkillCheckDirectLocation( Mobile from, SkillName skillName, double chance )
  {
   Skill skill = from.Skills[skillName];
   if ( skill == null )
    return false;
   if ( chance < 0.0 )
    return false; // Too difficult
   else if ( chance >= 1.0 )
    return true; // No challenge
   Point2D loc = new Point2D( from.Location.X / LocationSize, from.Location.Y / LocationSize );
   return CheckSkill( from, skill, loc, chance );
  }
  public static bool CheckSkill( Mobile from, Skill skill, object amObj, double chance )
  {
   if ( from.Skills.Cap == 0 )
    return false;
   bool success = ( chance >= Utility.RandomDouble() );

//here is modifications 2 skillgains
   double BaseSkillGain = skill.Info.GainFactor;
   double LowSkillMod = .005;
   double aSkillMod = .005;
   double bSkillMod = .01;
   double cSkillMod = .07;
   double dSkillMod = .055;
   double eSkillMod = .098;
   double fSkillMod = .085;
   double gSkillMod = .09;
   double hSkillMod = .095;
   double iSkillMod = .096;
   double jSkillMod = .097;
   double kSkillMod = .098;
   //Example: Player Skill is 85.3 - We would take the 12% base chance and subtract 8% - Player now has a 4% chance to gain.
// ********************************************************************************
*********************************//
   double ComputedSkillMod = 0; // holds the percent chance to gain after checking players skill

//here is modding gainrates. i.c. under lv 20% lowskillmod added 2 gain rate. from 20 to 40 askillmod substracted from it

   if ( skill.Base < 40.0 )
    ComputedSkillMod = BaseSkillGain + LowSkillMod;
   else if ( skill.Base < 60.0 )
    ComputedSkillMod = BaseSkillGain - aSkillMod;
   else if ( skill.Base < 80.0 )
    ComputedSkillMod = BaseSkillGain - bSkillMod;
   else if ( skill.Base < 100.0 )
    ComputedSkillMod = BaseSkillGain - cSkillMod;
   else if ( skill.Base < 120.0 )
    ComputedSkillMod = BaseSkillGain - dSkillMod;
   else if ( skill.Base < 121.0 )
    ComputedSkillMod = BaseSkillGain - eSkillMod;
   else if ( skill.Base < 125.0 )
    ComputedSkillMod = BaseSkillGain - fSkillMod;
   else if ( skill.Base < 130.0 )
    ComputedSkillMod = BaseSkillGain - gSkillMod;
   else if ( skill.Base < 135.0 )
    ComputedSkillMod = BaseSkillGain - hSkillMod;
   else if ( skill.Base < 140.0 )
    ComputedSkillMod = BaseSkillGain - iSkillMod;
   else if ( skill.Base < 145.0 )
    ComputedSkillMod = BaseSkillGain - jSkillMod;
   else if ( skill.Base >= 145.0 )
    ComputedSkillMod = BaseSkillGain - kSkillMod;

//if u make substraction larger than skill gain rate
   if ( ComputedSkillMod < 0.001 )
    ComputedSkillMod = 0.001;

   //following line used to see chance to gain ingame
   //from.SendMessage( "Your chance to gain {0} is {1}",skill.Name, ComputedSkillMod );
   if ( from is BaseCreature && ((BaseCreature)from).Controlled )
    ComputedSkillMod *= 2;
ComputedSkillMod *= RateDefinitions.ratebonus;
   if ( from.Alive && ( ( ComputedSkillMod >= Utility.RandomDouble() && AllowGain( from, skill, amObj ) ) || skill.Base < 10.0 ) )
    Gain( from, skill );
   return success;
  }
  public static bool Mobile_SkillCheckTarget( Mobile from, SkillName skillName, object target, double minSkill, double maxSkill )
  {
   Skill skill = from.Skills[skillName];
   if ( skill == null )
    return false;
   double value = skill.Value;
   if ( value < minSkill )
    return false; // Too difficult
   else if ( value >= maxSkill )
    return true; // No challenge
   double chance = (value - minSkill) / (maxSkill - minSkill);
   return CheckSkill( from, skill, target, chance );
  }
  public static bool Mobile_SkillCheckDirectTarget( Mobile from, SkillName skillName, object target, double chance )
  {
   Skill skill = from.Skills[skillName];
   if ( skill == null )
    return false;
   if ( chance < 0.0 )
    return false; // Too difficult
   else if ( chance >= 1.0 )
    return true; // No challenge
   return CheckSkill( from, skill, target, chance );
  }
  private static bool AllowGain( Mobile from, Skill skill, object obj )
  {
   if ( from is PlayerMobile && AntiMacroCode && UseAntiMacro[skill.Info.SkillID] )
    return ((PlayerMobile)from).AntiMacroCheck( skill, obj );
   else
    return true;
  }
  public enum Stat { Str, Dex, Int }
  public static void Gain( Mobile from, Skill skill )
  {
   if ( from.Region is Regions.Jail )
    return;
   if ( from is BaseCreature && ((BaseCreature)from).IsDeadPet )
    return;
   if ( skill.SkillName == SkillName.Focus && from is BaseCreature )
    return;
   if ( skill.Base < skill.Cap && skill.Lock == SkillLock.Up )
   {
    int toGain = 1;
    if ( skill.Base < 20.0 )
     toGain = 1;
    else if ( skill.Base < 40.0 )
     toGain = 1;
    else if ( skill.Base < 60.0 )
     toGain = 1;
    else if ( skill.Base < 90.0 )
     toGain = 1;
    else if ( skill.Base < 120.0 )
     toGain = 1;
    toGain *= RateDefinitions.gainbonus;
    Skills skills = from.Skills;
    if ( ( skills.Total / skills.Cap ) >= Utility.RandomDouble() )//( skills.Total >= skills.Cap )
    {
     for ( int i = 0; i < skills.Length; ++i )
     {
      Skill toLower = skills[i];
      if ( toLower != skill && toLower.Lock == SkillLock.Down && toLower.BaseFixedPoint >= toGain )
      {
       toLower.BaseFixedPoint -= toGain;
       break;
      }
     }
    }
    if ( (skills.Total + toGain) <= skills.Cap )
    {
     skill.BaseFixedPoint += toGain;
    }
   }
   if ( skill.Lock == SkillLock.Up )
   {
    SkillInfo info = skill.Info;
    if ( from.StrLock == StatLockType.Up && ((info.StrGain / 33.3) + RateDefinitions.StatGainBonus) > Utility.RandomDouble() )
    {
     if( info.StrGain != 0 )
      GainStat( from, Stat.Str );
    }
    else if ( from.DexLock == StatLockType.Up && ((info.DexGain / 33.3) + RateDefinitions.StatGainBonus) > Utility.RandomDouble() )
    {
     if( info.DexGain != 0 )
      GainStat( from, Stat.Dex );
    }
    else if ( from.IntLock == StatLockType.Up && ((info.IntGain / 33.3) + RateDefinitions.StatGainBonus) > Utility.RandomDouble() )
    {
     if( info.IntGain != 0 )
      GainStat( from, Stat.Int );
    }
    //following line used to show chance to gain stats ingame
    //from.SendMessage( "Str: {0} Dex: {1} Int: {2}",((info.StrGain / 33.3) + RateDefinitions.StatGainBonus),((info.DexGain / 33.3) + RateDefinitions.StatGainBonus),((info.IntGain / 33.3) + RateDefinitions.StatGainBonus) );
   }
  }
  public static bool CanLower( Mobile from, Stat stat )
  {
   switch ( stat )
   {
    case Stat.Str: return ( from.StrLock == StatLockType.Down && from.RawStr > 10 );
    case Stat.Dex: return ( from.DexLock == StatLockType.Down && from.RawDex > 10 );
    case Stat.Int: return ( from.IntLock == StatLockType.Down && from.RawInt > 10 );
   }
   return false;
  }
  public static bool CanRaise( Mobile from, Stat stat )
  {
   if ( !(from is BaseCreature && ((BaseCreature)from).Controlled) )
   {
    if ( from.RawStatTotal >= from.StatCap )
     return false;
   }
   switch ( stat )
   {
    case Stat.Str: return ( from.StrLock == StatLockType.Up && from.RawStr < 125 );
    case Stat.Dex: return ( from.DexLock == StatLockType.Up && from.RawDex < 125 );
    case Stat.Int: return ( from.IntLock == StatLockType.Up && from.RawInt < 125 );
   }
   return false;
  }
  public static void IncreaseStat( Mobile from, Stat stat, bool atrophy )
  {
   atrophy = atrophy || (from.RawStatTotal >= from.StatCap);
   switch ( stat )
   {
    case Stat.Str:
    {
     if ( atrophy )
     {
      if ( CanLower( from, Stat.Dex ) && (from.RawDex < from.RawInt || !CanLower( from, Stat.Int )) )
       --from.RawDex;
      else if ( CanLower( from, Stat.Int ) )
       --from.RawInt;
     }
     if ( CanRaise( from, Stat.Str ) )
      ++from.RawStr;
     break;
    }
    case Stat.Dex:
    {
     if ( atrophy )
     {
      if ( CanLower( from, Stat.Str ) && (from.RawStr < from.RawInt || !CanLower( from, Stat.Int )) )
       --from.RawStr;
      else if ( CanLower( from, Stat.Int ) )
       --from.RawInt;
     }
     if ( CanRaise( from, Stat.Dex ) )
      ++from.RawDex;
     break;
    }
    case Stat.Int:
    {
     if ( atrophy )
     {
      if ( CanLower( from, Stat.Str ) && (from.RawStr < from.RawDex || !CanLower( from, Stat.Dex )) )
       --from.RawStr;
      else if ( CanLower( from, Stat.Dex ) )
       --from.RawDex;
     }
     if ( CanRaise( from, Stat.Int ) )
      ++from.RawInt;
     break;
    }
   }
  }
  private static TimeSpan m_StatGainDelay = TimeSpan.FromMinutes( RateDefinitions.statgaindelay );
  public static void GainStat( Mobile from, Stat stat )
                {
                        switch( stat )
                        {
                                case Stat.Str:
                                {
                                        if( (from.LastStrGain + m_StatGainDelay) >= DateTime.Now )
                                                return;
                                        from.LastStrGain = DateTime.Now;
                                        break;
                                }
                                case Stat.Dex:
                                {
                                        if( (from.LastDexGain + m_StatGainDelay) >= DateTime.Now )
                                                return;
                                        from.LastDexGain = DateTime.Now;
                                        break;
                                }
                                case Stat.Int:
                                {
                                        if( (from.LastIntGain + m_StatGainDelay) >= DateTime.Now )
                                                return;
                                        from.LastIntGain = DateTime.Now;
                                        break;
                                }
                        }
        bool atrophy = ( (from.RawStatTotal / (double)from.StatCap) >= Utility.RandomDouble() );

            IncreaseStat( from, stat, atrophy );
  }
}
}
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Sergius Grey
сообщение 2.11.2012, 13:21
Сообщение #8


****

Apprentice
Сообщений: 149
Регистрация: 20.6.2011
Группа: Пользователи
Наличность: 0
Пользователь №: 13.734
Возраст: 23



Отключается этой строкой:
private static readonly bool AntiMacroCode = false;

Сообщение отредактировал Juzzver - 4.11.2012, 20:31
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
ZanozA
сообщение 2.11.2012, 14:00
Сообщение #9


***

Novice
Сообщений: 58
Регистрация: 11.10.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.367



Цитата(Sergius Grey @ 2.11.2012, 13:21) *

... нет слов ...
а еще же советуют буквари по шарпу... нихрена это не нужно!
Учим английский язык хотя бы до 9 класса по школьной программе. После задаем вопросы.

Чего ты добиваешься я понять не могу? Совсем обленился? Ты скрипт хотя бы читать пробуешь или ты охреневаешь от его размера на столько, что сразу постить начинаешь? Скрипты пишутся на английском языке. Следовательно его нужно знать хоть немного. Ты вообще походу тролль какой то. 2 аккаунта и с обоих троллишь. Просто реально уже бесить начинает что лень хотя бы половину страницы попытаться скрипта почитать!

private static readonly bool AntiMacroCode = false;
Вот это вот что??? ЧТО ЭТО??? Ладно, ты слишком умен чтоб понять это, тогда проще - AntiMacroCode = false; вот это вот что? Что такое false? Что это такое за гребаное слово?
Я охреневаю просто...

Та блин я это видел !
Исправил не помогло!
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Sergius Grey
сообщение 2.11.2012, 14:06
Сообщение #10


****

Apprentice
Сообщений: 149
Регистрация: 20.6.2011
Группа: Пользователи
Наличность: 0
Пользователь №: 13.734
Возраст: 23



Ты уверен, что точно знаешь, что такое антимакрос?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
ZanozA
сообщение 2.11.2012, 14:08
Сообщение #11


***

Novice
Сообщений: 58
Регистрация: 11.10.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.367



уверен!
Это чтоб на скрипте не копали метали и тд!
Код
 private static readonly bool AntiMacroCode = True;
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Sergius Grey
сообщение 2.11.2012, 14:13
Сообщение #12


****

Apprentice
Сообщений: 149
Регистрация: 20.6.2011
Группа: Пользователи
Наличность: 0
Пользователь №: 13.734
Возраст: 23



Нет, я имел ввиду его принцип работы... Или ты что, думаешь что каждой попыткой (действием) например пошить одежду или вскопнуть руду будет повышаться скил? Нет, это не антимакрос и отключение его этого не даст. Он работает не так. Нужно чтоб скилы росли с каждым действием соответствующему скилу - меняй это в том же скрипте. Как ты определил что у тебя антимакрос не отключается? Либо опять кастомного мусора полно, либо ты *ничего* не знаешь про то как действует антимакрос.

Сообщение отредактировал Juzzver - 4.11.2012, 20:34
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
ZanozA
сообщение 2.11.2012, 14:23
Сообщение #13


***

Novice
Сообщений: 58
Регистрация: 11.10.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.367



Цитата(Sergius Grey @ 2.11.2012, 14:13) *

Нет, я имел ввиду его принцип работы... Или ты что, думаешь что каждой попыткой (действием) например пошить одежду или вскопнуть руду будет повышаться скил? Нет, это не антимакрос и отключение его этого не даст. Он работает не так. Нужно чтоб скилы росли с каждым действием соответствующему скилу - меняй это в том же скрипте. Как ты определил что у тебя антимакрос не отключается? Либо опять кастомного мусора полно, либо ты нихрена не знаешь как действует антимакрос.

Короче смотри!
Когда я рублю лес *энное врем* выскакивает табличка на проверку макроса!
Тобиж там нужно,выбрать указаны цифры!
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Sergius Grey
сообщение 2.11.2012, 14:39
Сообщение #14


****

Apprentice
Сообщений: 149
Регистрация: 20.6.2011
Группа: Пользователи
Наличность: 0
Пользователь №: 13.734
Возраст: 23



Значит так я тебе еще раз повторяю - это твои КАСТОМНЫЕ СКРИПТЫ *которые ты где-то скачал*! Здесь обсуждают только базовую версию рануо, в которой этого всего и в помине нету. Откуда тут все знают, какие у тебя скрипты на антимакрос стоят (коих кучка на том же рануо.ком к примеру)? Тут не экстрасенсы сидят.

Сообщение отредактировал Juzzver - 4.11.2012, 20:35
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
ZanozA
сообщение 2.11.2012, 14:47
Сообщение #15


***

Novice
Сообщений: 58
Регистрация: 11.10.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.367



Цитата(Sergius Grey @ 2.11.2012, 14:39) *

Значит так я тебе еще раз повторяю - это твои КАСТОМНЫЕ СКРИПТЫ которые ты хрен знает где набрал! Здесь обсуждают только базовую версию рануо, в которой этого всего и в помине нету. Откуда тут все знают, какие у тебя скрипты на антимакрос стоят (коих кучка на том же рануо.ком к примеру)? Тут не экстрасенсы сидят.

Ну так по этому я и спросил , где может этот скрипт лежать.
Я перерыл уже все что можно было!

Сообщение отредактировал Juzzver - 4.11.2012, 20:36
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
ZanozA
сообщение 2.11.2012, 16:22
Сообщение #16


***

Novice
Сообщений: 58
Регистрация: 11.10.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.367



Хочу сделать чтоб все крафт скилы полегче качались!
Я так понял это тут в SkillCheck.cs
Код
bool success = ( chance >= Utility.RandomDouble() );
            double gc = (double)(from.Skills.Cap - from.Skills.Total) / from.Skills.Cap;
            gc += ( skill.Cap - skill.Base ) / skill.Cap;
            gc /= 3;

            gc += ( 1.0 - chance ) * ( success ? 0.5 : (Core.AOS ? 0.0 : 0.2) );
            gc /= 3;

где 3 ето есть скорость прокачки?
Я поставил другой серв там совсем другой код!
Код
using Server;
using System;
using Server.Mobiles;
using Server.RateDef;
namespace Server.Misc
{
public class SkillCheck
{
                private static readonly bool AntiMacroCode = false;  //Change this to true to enable anti-macro code
  public static TimeSpan AntiMacroExpire = TimeSpan.FromMinutes( 5.0 ); //How long do we remember targets/locations?
  public const int Allowance = 3; //How many times may we use the same location/target for gain
  private const int LocationSize = 5; //The size of eeach location, make this smaller so players dont have to move as far
  private static bool[] UseAntiMacro = new bool[]
  {
   // true if this skill uses the anti-macro code, false if it does not
   false,// Alchemy = 0,
   true,// Anatomy = 1,
   true,// AnimalLore = 2,
   true,// ItemID = 3,
   true,// ArmsLore = 4,
   false,// Parry = 5,
   true,// Begging = 6,
   false,// Blacksmith = 7,
   false,// Fletching = 8,
   true,// Peacemaking = 9,
   true,// Camping = 10,
   false,// Carpentry = 11,
   false,// Cartography = 12,
   false,// Cooking = 13,
   true,// DetectHidden = 14,
   true,// Discordance = 15,
   true,// EvalInt = 16,
   true,// Healing = 17,
   true,// Fishing = 18,
   true,// Forensics = 19,
   true,// Herding = 20,
   true,// Hiding = 21,
   true,// Provocation = 22,
   false,// Inscribe = 23,
   true,// Lockpicking = 24,
   true,// Magery = 25,
   true,// MagicResist = 26,
   false,// Tactics = 27,
   true,// Snooping = 28,
   true,// Musicianship = 29,
   true,// Poisoning = 30,
   false,// Archery = 31,
   true,// SpiritSpeak = 32,
   true,// Stealing = 33,
   false,// Tailoring = 34,
   true,// AnimalTaming = 35,
   true,// TasteID = 36,
   false,// Tinkering = 37,
   true,// Tracking = 38,
   true,// Veterinary = 39,
   false,// Swords = 40,
   false,// Macing = 41,
   false,// Fencing = 42,
   false,// Wrestling = 43,
   true,// Lumberjacking = 44,
   true,// Mining = 45,
   true,// Meditation = 46,
   true,// Stealth = 47,
   true,// RemoveTrap = 48,
   true,// Necromancy = 49,
   false,// Focus = 50,
   true,// Chivalry = 51
                        true,// Bushido = 52
                        true,//Ninjitsu = 53
                        true // Spellweaving
  };
  public static void Initialize()
  {
   Mobile.SkillCheckLocationHandler = new SkillCheckLocationHandler( Mobile_SkillCheckLocation );
   Mobile.SkillCheckDirectLocationHandler = new SkillCheckDirectLocationHandler( Mobile_SkillCheckDirectLocation );
   Mobile.SkillCheckTargetHandler = new SkillCheckTargetHandler( Mobile_SkillCheckTarget );
   Mobile.SkillCheckDirectTargetHandler = new SkillCheckDirectTargetHandler( Mobile_SkillCheckDirectTarget );

//here is gainrates 4 each skill
//for instance .15 would be a 15% chance to gain in the particular skill

   SkillInfo.Table[0].GainFactor = .15;// Alchemy = 0,
   SkillInfo.Table[1].GainFactor = .15;// Anatomy = 1,
   SkillInfo.Table[2].GainFactor = .15;// AnimalLore = 2,
   SkillInfo.Table[3].GainFactor = .15;// ItemID = 3,
   SkillInfo.Table[4].GainFactor = .15;// ArmsLore = 4,
   SkillInfo.Table[5].GainFactor = .15;// Parry = 5,
   SkillInfo.Table[6].GainFactor = .15;// Begging = 6,
   SkillInfo.Table[7].GainFactor = .12;// Blacksmith = 7,
   SkillInfo.Table[8].GainFactor = .15;// Fletching = 8,
   SkillInfo.Table[9].GainFactor = .15;// Peacemaking = 9,
   SkillInfo.Table[10].GainFactor = .15;// Camping = 10,
   SkillInfo.Table[11].GainFactor = .15;// Carpentry = 11,
   SkillInfo.Table[12].GainFactor = .15;// Cartography = 12,
   SkillInfo.Table[13].GainFactor = .15;// Cooking = 13,
   SkillInfo.Table[14].GainFactor = .15;// DetectHidden = 14,
   SkillInfo.Table[15].GainFactor = .15;// Discordance = 15,
   SkillInfo.Table[16].GainFactor = .15;// EvalInt = 16,
   SkillInfo.Table[17].GainFactor = .15;// Healing = 17,
   SkillInfo.Table[18].GainFactor = .15;// Fishing = 18,
   SkillInfo.Table[19].GainFactor = .15;// Forensics = 19,
   SkillInfo.Table[20].GainFactor = .15;// Herding = 20,
   SkillInfo.Table[21].GainFactor = .15;// Hiding = 21,
   SkillInfo.Table[22].GainFactor = .15;// Provocation = 22,
   SkillInfo.Table[23].GainFactor = .15;// Inscribe = 23,
   SkillInfo.Table[24].GainFactor = .15;// Lockpicking = 24,
   SkillInfo.Table[25].GainFactor = .15;// Magery = 25,
   SkillInfo.Table[26].GainFactor = .15;// MagicResist = 26,
   SkillInfo.Table[27].GainFactor = .15;// Tactics = 27,
   SkillInfo.Table[28].GainFactor = .15;// Snooping = 28,
   SkillInfo.Table[29].GainFactor = .15;// Musicianship = 29,
   SkillInfo.Table[30].GainFactor = .15;// Poisoning = 30
   SkillInfo.Table[31].GainFactor = .15;// Archery = 31
   SkillInfo.Table[32].GainFactor = .15;// SpiritSpeak = 32
   SkillInfo.Table[33].GainFactor = .15;// Stealing = 33
   SkillInfo.Table[34].GainFactor = .12;// Tailoring = 34
   SkillInfo.Table[35].GainFactor = .15;// AnimalTaming = 35
   SkillInfo.Table[36].GainFactor = .15;// TasteID = 36
   SkillInfo.Table[37].GainFactor = .15;// Tinkering = 37
   SkillInfo.Table[38].GainFactor = .15;// Tracking = 38
   SkillInfo.Table[39].GainFactor = .15;// Veterinary = 39
   SkillInfo.Table[40].GainFactor = .15;// Swords = 40
   SkillInfo.Table[41].GainFactor = .15;// Macing = 41
   SkillInfo.Table[42].GainFactor = .15;// Fencing = 42
   SkillInfo.Table[43].GainFactor = .15;// Wrestling = 43
   SkillInfo.Table[44].GainFactor = .15;// Lumberjacking = 44
   SkillInfo.Table[45].GainFactor = .15;// Mining = 45
   SkillInfo.Table[46].GainFactor = .15;// Meditation = 46
   SkillInfo.Table[47].GainFactor = .15;// Stealth = 47
   SkillInfo.Table[48].GainFactor = .15;// RemoveTrap = 48
   SkillInfo.Table[49].GainFactor = .15;// Necromancy = 49
   SkillInfo.Table[50].GainFactor = .15;// Focus = 50
   SkillInfo.Table[51].GainFactor = .15;// Chivalry = 51
  }
  public static bool Mobile_SkillCheckLocation( Mobile from, SkillName skillName, double minSkill, double maxSkill )
  {
   Skill skill = from.Skills[skillName];
   if ( skill == null )
    return false;
   double value = skill.Value;
   if ( value < minSkill )
    return false; // Too difficult
   else if ( value >= maxSkill )
    return true; // No challenge
   double chance = (value - minSkill) / (maxSkill - minSkill);
   Point2D loc = new Point2D( from.Location.X / LocationSize, from.Location.Y / LocationSize );
   return CheckSkill( from, skill, loc, chance );
  }
  public static bool Mobile_SkillCheckDirectLocation( Mobile from, SkillName skillName, double chance )
  {
   Skill skill = from.Skills[skillName];
   if ( skill == null )
    return false;
   if ( chance < 0.0 )
    return false; // Too difficult
   else if ( chance >= 1.0 )
    return true; // No challenge
   Point2D loc = new Point2D( from.Location.X / LocationSize, from.Location.Y / LocationSize );
   return CheckSkill( from, skill, loc, chance );
  }
  public static bool CheckSkill( Mobile from, Skill skill, object amObj, double chance )
  {
   if ( from.Skills.Cap == 0 )
    return false;
   bool success = ( chance >= Utility.RandomDouble() );

//here is modifications 2 skillgains
   double BaseSkillGain = skill.Info.GainFactor;
   double LowSkillMod = .005;
   double aSkillMod = .005;
   double bSkillMod = .01;
   double cSkillMod = .07;
   double dSkillMod = .055;
   double eSkillMod = .098;
   double fSkillMod = .085;
   double gSkillMod = .09;
   double hSkillMod = .095;
   double iSkillMod = .096;
   double jSkillMod = .097;
   double kSkillMod = .098;
   //Example: Player Skill is 85.3 - We would take the 12% base chance and subtract 8% - Player now has a 4% chance to gain.
// ********************************************************************************
*********************************//
   double ComputedSkillMod = 0; // holds the percent chance to gain after checking players skill

//here is modding gainrates. i.c. under lv 20% lowskillmod added 2 gain rate. from 20 to 40 askillmod substracted from it

   if ( skill.Base < 40.0 )
    ComputedSkillMod = BaseSkillGain + LowSkillMod;
   else if ( skill.Base < 60.0 )
    ComputedSkillMod = BaseSkillGain - aSkillMod;
   else if ( skill.Base < 80.0 )
    ComputedSkillMod = BaseSkillGain - bSkillMod;
   else if ( skill.Base < 100.0 )
    ComputedSkillMod = BaseSkillGain - cSkillMod;
   else if ( skill.Base < 120.0 )
    ComputedSkillMod = BaseSkillGain - dSkillMod;
   else if ( skill.Base < 121.0 )
    ComputedSkillMod = BaseSkillGain - eSkillMod;
   else if ( skill.Base < 125.0 )
    ComputedSkillMod = BaseSkillGain - fSkillMod;
   else if ( skill.Base < 130.0 )
    ComputedSkillMod = BaseSkillGain - gSkillMod;
   else if ( skill.Base < 135.0 )
    ComputedSkillMod = BaseSkillGain - hSkillMod;
   else if ( skill.Base < 140.0 )
    ComputedSkillMod = BaseSkillGain - iSkillMod;
   else if ( skill.Base < 145.0 )
    ComputedSkillMod = BaseSkillGain - jSkillMod;
   else if ( skill.Base >= 145.0 )
    ComputedSkillMod = BaseSkillGain - kSkillMod;

//if u make substraction larger than skill gain rate
   if ( ComputedSkillMod < 0.001 )
    ComputedSkillMod = 0.001;

   //following line used to see chance to gain ingame
   //from.SendMessage( "Your chance to gain {0} is {1}",skill.Name, ComputedSkillMod );
   if ( from is BaseCreature && ((BaseCreature)from).Controlled )
    ComputedSkillMod *= 2;
ComputedSkillMod *= RateDefinitions.ratebonus;
   if ( from.Alive && ( ( ComputedSkillMod >= Utility.RandomDouble() && AllowGain( from, skill, amObj ) ) || skill.Base < 10.0 ) )
    Gain( from, skill );
   return success;
  }
  public static bool Mobile_SkillCheckTarget( Mobile from, SkillName skillName, object target, double minSkill, double maxSkill )
  {
   Skill skill = from.Skills[skillName];
   if ( skill == null )
    return false;
   double value = skill.Value;
   if ( value < minSkill )
    return false; // Too difficult
   else if ( value >= maxSkill )
    return true; // No challenge
   double chance = (value - minSkill) / (maxSkill - minSkill);
   return CheckSkill( from, skill, target, chance );
  }
  public static bool Mobile_SkillCheckDirectTarget( Mobile from, SkillName skillName, object target, double chance )
  {
   Skill skill = from.Skills[skillName];
   if ( skill == null )
    return false;
   if ( chance < 0.0 )
    return false; // Too difficult
   else if ( chance >= 1.0 )
    return true; // No challenge
   return CheckSkill( from, skill, target, chance );
  }
  private static bool AllowGain( Mobile from, Skill skill, object obj )
  {
   if ( from is PlayerMobile && AntiMacroCode && UseAntiMacro[skill.Info.SkillID] )
    return ((PlayerMobile)from).AntiMacroCheck( skill, obj );
   else
    return true;
  }
  public enum Stat { Str, Dex, Int }
  public static void Gain( Mobile from, Skill skill )
  {
   if ( from.Region is Regions.Jail )
    return;
   if ( from is BaseCreature && ((BaseCreature)from).IsDeadPet )
    return;
   if ( skill.SkillName == SkillName.Focus && from is BaseCreature )
    return;
   if ( skill.Base < skill.Cap && skill.Lock == SkillLock.Up )
   {
    int toGain = 1;
    if ( skill.Base < 20.0 )
     toGain = 1;
    else if ( skill.Base < 40.0 )
     toGain = 1;
    else if ( skill.Base < 60.0 )
     toGain = 1;
    else if ( skill.Base < 90.0 )
     toGain = 1;
    else if ( skill.Base < 120.0 )
     toGain = 1;
    toGain *= RateDefinitions.gainbonus;
    Skills skills = from.Skills;
    if ( ( skills.Total / skills.Cap ) >= Utility.RandomDouble() )//( skills.Total >= skills.Cap )
    {
     for ( int i = 0; i < skills.Length; ++i )
     {
      Skill toLower = skills[i];
      if ( toLower != skill && toLower.Lock == SkillLock.Down && toLower.BaseFixedPoint >= toGain )
      {
       toLower.BaseFixedPoint -= toGain;
       break;
      }
     }
    }
    if ( (skills.Total + toGain) <= skills.Cap )
    {
     skill.BaseFixedPoint += toGain;
    }
   }
   if ( skill.Lock == SkillLock.Up )
   {
    SkillInfo info = skill.Info;
    if ( from.StrLock == StatLockType.Up && ((info.StrGain / 33.3) + RateDefinitions.StatGainBonus) > Utility.RandomDouble() )
    {
     if( info.StrGain != 0 )
      GainStat( from, Stat.Str );
    }
    else if ( from.DexLock == StatLockType.Up && ((info.DexGain / 33.3) + RateDefinitions.StatGainBonus) > Utility.RandomDouble() )
    {
     if( info.DexGain != 0 )
      GainStat( from, Stat.Dex );
    }
    else if ( from.IntLock == StatLockType.Up && ((info.IntGain / 33.3) + RateDefinitions.StatGainBonus) > Utility.RandomDouble() )
    {
     if( info.IntGain != 0 )
      GainStat( from, Stat.Int );
    }
    //following line used to show chance to gain stats ingame
    //from.SendMessage( "Str: {0} Dex: {1} Int: {2}",((info.StrGain / 33.3) + RateDefinitions.StatGainBonus),((info.DexGain / 33.3) + RateDefinitions.StatGainBonus),((info.IntGain / 33.3) + RateDefinitions.StatGainBonus) );
   }
  }
  public static bool CanLower( Mobile from, Stat stat )
  {
   switch ( stat )
   {
    case Stat.Str: return ( from.StrLock == StatLockType.Down && from.RawStr > 10 );
    case Stat.Dex: return ( from.DexLock == StatLockType.Down && from.RawDex > 10 );
    case Stat.Int: return ( from.IntLock == StatLockType.Down && from.RawInt > 10 );
   }
   return false;
  }
  public static bool CanRaise( Mobile from, Stat stat )
  {
   if ( !(from is BaseCreature && ((BaseCreature)from).Controlled) )
   {
    if ( from.RawStatTotal >= from.StatCap )
     return false;
   }
   switch ( stat )
   {
    case Stat.Str: return ( from.StrLock == StatLockType.Up && from.RawStr < 125 );
    case Stat.Dex: return ( from.DexLock == StatLockType.Up && from.RawDex < 125 );
    case Stat.Int: return ( from.IntLock == StatLockType.Up && from.RawInt < 125 );
   }
   return false;
  }
  public static void IncreaseStat( Mobile from, Stat stat, bool atrophy )
  {
   atrophy = atrophy || (from.RawStatTotal >= from.StatCap);
   switch ( stat )
   {
    case Stat.Str:
    {
     if ( atrophy )
     {
      if ( CanLower( from, Stat.Dex ) && (from.RawDex < from.RawInt || !CanLower( from, Stat.Int )) )
       --from.RawDex;
      else if ( CanLower( from, Stat.Int ) )
       --from.RawInt;
     }
     if ( CanRaise( from, Stat.Str ) )
      ++from.RawStr;
     break;
    }
    case Stat.Dex:
    {
     if ( atrophy )
     {
      if ( CanLower( from, Stat.Str ) && (from.RawStr < from.RawInt || !CanLower( from, Stat.Int )) )
       --from.RawStr;
      else if ( CanLower( from, Stat.Int ) )
       --from.RawInt;
     }
     if ( CanRaise( from, Stat.Dex ) )
      ++from.RawDex;
     break;
    }
    case Stat.Int:
    {
     if ( atrophy )
     {
      if ( CanLower( from, Stat.Str ) && (from.RawStr < from.RawDex || !CanLower( from, Stat.Dex )) )
       --from.RawStr;
      else if ( CanLower( from, Stat.Dex ) )
       --from.RawDex;
     }
     if ( CanRaise( from, Stat.Int ) )
      ++from.RawInt;
     break;
    }
   }
  }
  private static TimeSpan m_StatGainDelay = TimeSpan.FromMinutes( RateDefinitions.statgaindelay );
  public static void GainStat( Mobile from, Stat stat )
                {
                        switch( stat )
                        {
                                case Stat.Str:
                                {
                                        if( (from.LastStrGain + m_StatGainDelay) >= DateTime.Now )
                                                return;
                                        from.LastStrGain = DateTime.Now;
                                        break;
                                }
                                case Stat.Dex:
                                {
                                        if( (from.LastDexGain + m_StatGainDelay) >= DateTime.Now )
                                                return;
                                        from.LastDexGain = DateTime.Now;
                                        break;
                                }
                                case Stat.Int:
                                {
                                        if( (from.LastIntGain + m_StatGainDelay) >= DateTime.Now )
                                                return;
                                        from.LastIntGain = DateTime.Now;
                                        break;
                                }
                        }
        bool atrophy = ( (from.RawStatTotal / (double)from.StatCap) >= Utility.RandomDouble() );

            IncreaseStat( from, stat, atrophy );
  }
}
}
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
ZanozA
сообщение 2.11.2012, 16:41
Сообщение #17


***

Novice
Сообщений: 58
Регистрация: 11.10.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.367



Сори не розабралс!
Вот макрос я его удалил вышла ошибка !
Как его отключить?
MacroGump.cs
Код
using System;
using Server;
using Server.Gumps;
using Server.Network;
using Server.Mobiles;
using Server.Commands;

public class MacroGump : Gump
{
    private Mobile badBoy;

    MGResponseTimer myTimer;
    
    int tbutton = 2;
    
    private static int StartX = Utility.Random( 10, 100 );
    private static int StartY = Utility.Random( 10, 70 );
    
    public MacroGump( Mobile m ) : base( StartX, StartY )
    {
        tbutton = Utility.Random( 1, 6 );
        
        badBoy = m;
        
        string Answer1 = "Я тута и нет у меня никакого макроса!";
        string Answer2 = "Я на макросе и клал болт на ваши проверки!";
        
        int TextColor1 = Utility.Random( 2, 1000 );
        int TextColor2 = Utility.Random( 2, 1000 );
        int TextColor3 = Utility.Random( 2, 1000 );
        
        int Gump1 = Utility.Random( 23000, 15 );
        int Gump2 = Utility.Random( 23000, 15 );
        int Gump3 = Utility.Random( 23000, 15 );
        int Gump4 = Utility.Random( 23000, 15 );

        Closable = false;
        Dragable = true;
        
        AddPage( 0 );
        AddBackground( 0, 0, 420, 320, 5054 );
        AddImageTiled( 9, 65, 200, 120, Gump1 );
        AddImageTiled( 209, 185, 200, 120, Gump2 );
        AddImageTiled( 209, 65, 200, 120, Gump3 );
        AddImageTiled( 9, 185, 200, 120, Gump4 );
        //AddAlphaRegion( 9, 65, 400, 240 );

        AddHtml( 16, 10, 410, 50, @"Это окно проверки на макрос. Если Вы не используете макрос подтвердите своё присутствие.", false, false );            

        AddButton( 20, 72, 2472, 2473, 5, GumpButtonType.Reply, 0 );
        AddLabel( 50, 75, TextColor2, tbutton == 5 ? Answer1 : Answer2 );
        AddButton( 20, 112, 2472, 2473, 1, GumpButtonType.Reply, 0 );
        AddLabel( 50, 115, TextColor1, tbutton == 1 ? Answer1 : Answer2 );
        AddButton( 20, 152, 2472, 2473, 2, GumpButtonType.Reply, 0 );
        AddLabel( 50, 155, TextColor3, tbutton == 2 ? Answer1 : Answer2 );
        AddButton( 20, 192, 2472, 2473, 3, GumpButtonType.Reply, 0 );
        AddLabel( 50, 195, TextColor3, tbutton == 3 ? Answer1 : Answer2 );
        AddButton( 20, 232, 2472, 2473, 4, GumpButtonType.Reply, 0 );
        AddLabel( 50, 235, TextColor2, tbutton == 4 ? Answer1 : Answer2 );
        AddButton( 20, 272, 2472, 2473, 6, GumpButtonType.Reply, 0 );
        AddLabel( 50, 275, TextColor1, tbutton == 6 ? Answer1 : Answer2 );
        
        myTimer = new MGResponseTimer( badBoy );
    }
        
    public override void OnResponse( NetState state, RelayInfo info )
    {
        Mobile m = state.Mobile;
        
        if ( myTimer != null )
            myTimer.Stop();
            
        if( tbutton == info.ButtonID )
        {
            ( ( PlayerMobile )m ).MacroUses = -100;
            m.SendMessage( 0x59, "Спасибо. Извините за неудобства. Удачной игры." );
        }  
        else
        {
            if ( state != null )
                state.Dispose();            
        }
    }
    
    public class MGResponseTimer : Timer
    {
        private Mobile BadBoy;
    
        public MGResponseTimer( Mobile m ) : base( TimeSpan.FromMinutes(2), TimeSpan.FromMinutes(2) )
        {
            BadBoy = m;
            this.Start();
        }
        
        protected override void OnTick()
        {
            this.Stop();
            if ( !BadBoy.Deleted && BadBoy.NetState != null  )
                BadBoy.NetState.Dispose();
        }
    }
    
    public string Color( string text, int color )
    {
        return String.Format( "<BASEFONT COLOR=#{0:X6}>{1}</BASEFONT>", color, text );
    }
}
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Warstone
сообщение 3.11.2012, 4:36
Сообщение #18


*********

Группа: Модераторы
Наличность: 0
Пользователь №: 10.905
Возраст: 25



Ну наверно найти где он вызывается и убрать вызов.

А найти можно таким образом: Выпилить этот фаил и скомпилить скрипты. Они упадут. Посмотреть где падают и выпилить упоминание этого скрипта и там.


--------------------
Do. Or do not. There is no Try!
© Master Joda, Dagobah, Star Wars: Episode V.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Juzzver
сообщение 4.11.2012, 20:48
Сообщение #19


**********

Модератор RunUO
Сообщений: 3.425
Регистрация: 1.11.2008
Группа: Супермодераторы
Наличность: 22568
Из: Северная Корея
Пользователь №: 11.273



Флуд и оскорбления из темы вычищены.
Для высказывания негатива используйте личные сообщения.
Если не желаете помогать пользователям в связи с какими либо причинами, лучше проигнорируйте обращение, чем высказывать свое мнение в грубой форме.

Ответ по теме:
Если имеется гамп "MacroGump", т.е. картинка которая появляется в игре, следовательно есть скрипт, в котором вызывается при каких либо условиях этот гамп. Предположительно такой скрипт может называться Macro.cs. Если данный скрипт не имеет в наличии включения и отключения системы, к примеру "Enable = true/false" и есть необходимость в том, чтобы убрать данную систему с сервера, и Вы не знаете где находятся скрипты этой системы, то достаточно удалить один из комплектующих скрипта, в данном случае это MacroGump.cs, в следствии чего появятся ошибки при загрузке сервера, которые будут ссылаться на определенный скрит(ы), следовательно удаление которых решит проблему с ошибками и уберет систему с сервера.


--------------------
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
ZanozA
сообщение 4.11.2012, 23:25
Сообщение #20


***

Novice
Сообщений: 58
Регистрация: 11.10.2012
Группа: Пользователи
Наличность: 0
Пользователь №: 15.367



Цитата(Juzzver @ 4.11.2012, 20:48) *

Флуд и оскорбления из темы вычищены.
Для высказывания негатива используйте личные сообщения.
Если не желаете помогать пользователям в связи с какими либо причинами, лучше проигнорируйте обращение, чем высказывать свое мнение в грубой форме.

Ответ по теме:
Если имеется гамп "MacroGump", т.е. картинка которая появляется в игре, следовательно есть скрипт, в котором вызывается при каких либо условиях этот гамп. Предположительно такой скрипт может называться Macro.cs. Если данный скрипт не имеет в наличии включения и отключения системы, к примеру "Enable = true/false" и есть необходимость в том, чтобы убрать данную систему с сервера, и Вы не знаете где находятся скрипты этой системы, то достаточно удалить один из комплектующих скрипта, в данном случае это MacroGump.cs, в следствии чего появятся ошибки при загрузке сервера, которые будут ссылаться на определенный скрит(ы), следовательно удаление которых решит проблему с ошибками и уберет систему с сервера.

Спасибо .
И ещё вопрос.
У меня при создание акаунта в сумке лежит 1000ка
где изменить к примеру на 20000 !
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

2 страниц V  1 2 >
Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 24.4.2024, 16:16
Designed by Nickostyle