本文整理匯總了C#中Server.Items.Bandage.Consume方法的典型用法代碼示例。如果您正苦於以下問題:C# Bandage.Consume方法的具體用法?C# Bandage.Consume怎麽用?C# Bandage.Consume使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Server.Items.Bandage
的用法示例。
在下文中一共展示了Bandage.Consume方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。
示例1: EndHeal
//.........這裏部分代碼省略.........
if ((checkSkills = (healing >= 60.0 && anatomy >= 60.0)) && chance > Utility.RandomDouble())
{
if (m_Patient.CurePoison(m_Healer))
{
healerNumber = (m_Healer == m_Patient) ? -1 : 1010058; // You have cured the target of all poisons.
patientNumber = 1010059; // You have been cured of all poisons.
}
else
{
healerNumber = -1;
patientNumber = -1;
}
}
else
{
healerNumber = 1010060; // You have failed to cure your target!
patientNumber = -1;
}
}
else if( BleedAttack.IsBleeding( m_Patient ) )
BleedAttack.EndBleed( m_Patient, false );
else if( MortalStrike.IsWounded( m_Patient ) )
healerNumber = ( m_Healer == m_Patient ? 1005000 : 1010398 );
else if( m_Patient.Hits == m_Patient.HitsMax )
healerNumber = 500967; // You heal what little damage your patient had.
else
{
checkSkills = true;
patientNumber = -1;
Bandage bandage = null;
if( origin.Parent == null && !origin.Deleted )
origin.Consume( 1 );
else if( ( bandage = m_Healer.Backpack.FindItemByType( typeof( Bandage ), true ) as Bandage ) == null )
{
m_Healer.SendAsciiMessage( "You don't have any bandages." );
return;
}
else
bandage.Consume( 1 );
double healing = m_Healer.Skills[primarySkill].Base;
double anatomy = m_Healer.Skills[secondarySkill].Base;
//Loki edit: Dexterity improves healing chance
double chance = (healing/100.0) * (0.91 + (((double)m_Healer.RawDex - 80.0) / 1000.0));
if( chance > Utility.RandomDouble() )
{
double min, max;
min = 0.04 * ( ( anatomy / 4.0 ) + ( healing / 4.0 ) );
max = ( ( anatomy / 4.0 ) + ( healing / 4.0 ) ) - 4;
//Loki edit: Bonus from dexterity
double dexbonus = ((double)m_Healer.RawDex - 80.0) / 10.0;
min += dexbonus;
max += dexbonus / 2;
if( max < 2 )
max = 2;
double toHeal = Utility.RandomMinMax( (int)min, (int)max );
if( toHeal < 1 )
示例2: tryToHeal
public static bool tryToHeal(Mobile healer, Mobile patient, Bandage bandage){
if(patient.Alive && (patient.Hits < patient.HitsMax || patient.Poisoned) ){
if ( healer == patient)
patient.SendLocalizedMessage( 1008078, false, healer.Name ); // : Attempting to heal you.
healer.SendLocalizedMessage( 500956 ); // You begin applying the bandages.
double finalDelay = new Random().NextDouble()*(Bandage.delayMax-Bandage.delayMin)+Bandage.delayMin;
contextTable[healer] = new HealingContext(healer, patient, finalDelay);
bandage.Consume();
return true;
}
return false;
}
示例3: BandageContext
public BandageContext( Mobile healer, Mobile patient, TimeSpan delay, Bandage origin )
{
m_Healer = healer;
m_Patient = patient;
if( m_Patient != null && !m_Patient.Alive )
{
if( m_Healer.Skills[SkillName.Anatomy].Base < 100.0 || m_Healer.Skills[SkillName.Healing].Base < 100.0 )
{
if( m_Healer.Skills[SkillName.Anatomy].Base < 100.0 && m_Healer.Skills[SkillName.Healing].Base < 100.0 )
{
m_Healer.SendAsciiMessage( "You need GM healing and anatomy to resurrect your target." );
return;
}
else if( m_Healer.Skills[SkillName.Anatomy].Base < 100.0 )
{
m_Healer.SendAsciiMessage( "You need GM anatomy to resurrect your target." );
return;
}
else if( m_Healer.Skills[SkillName.Healing].Base < 100.0 )
{
m_Healer.SendAsciiMessage( "You need GM healing to resurrect your target." );
return;
}
}
if( m_Healer.Hits <= 50 )
{
m_Healer.SendAsciiMessage( "You need to have more than 50 hp to resurrect your target" );
return;
}
if( m_Patient.Region is HouseRegion )
{
m_Healer.SendAsciiMessage( "You can't resurrect people in house regions." );
//Server.Multis.BaseHouse patientHouse = (m_Patient.Region as HouseRegion).House;
////The owner can resurrect who ever he wants.
//if (patientHouse.IsOwner(m_Healer) || patientHouse.IsCoOwner(m_Healer))
//{
// m_Patient.Resurrect();
// m_Patient.Hits = 10;
// m_Healer.PublicOverheadMessage(MessageType.Regular, 0x22, true, "*You see " + m_Healer.Name + " resurrecting " + m_Patient.Name + "*");
// m_Healer.Hits -= 50;
//}
////The patient can be ressed by anoyone as long as he is an owner, co owner or friend
//else if (patientHouse.IsOwner(m_Patient) || patientHouse.IsCoOwner(m_Patient) || patientHouse.IsFriend(m_Patient))
//{
// m_Patient.Resurrect();
// m_Patient.Hits = 10;
// m_Healer.PublicOverheadMessage(MessageType.Regular, 0x22, true, "*You see " + m_Healer.Name + " resurrecting " + m_Patient.Name + "*");
// m_Healer.Hits -= 50;
//}
//else
//{
// m_Patient.SendAsciiMessage("You cannot be resurrected in this region!");
// m_Healer.SendAsciiMessage("You cannot resurrect in this region!");
//}
}
else
{
m_Patient.PlaySound( 0x214 );
m_Patient.Resurrect();
m_Patient.Hits = 10;
m_Healer.PublicOverheadMessage( MessageType.Regular, 0x22, true, "*You see " + m_Healer.Name + " resurrecting " + m_Patient.Name + "*" );
m_Healer.Hits -= 50;
origin.Consume(1);
}
}
else
{
m_Timer = new InternalTimer( this, delay, origin );
m_Timer.Start();
}
}