SphereCommunity
can't rescurrect - Printable Version

+- SphereCommunity (https://forum.spherecommunity.net)
+-- Forum: Sphere 0.56d (/Forum-Sphere-0-56d)
+--- Forum: General Help (/Forum-General-Help)
+--- Thread: can't rescurrect (/Thread-can-t-rescurrect)

Pages: 1 2


can't rescurrect - Alias - 05-10-2012 01:37 AM

Hi, i have problem when if region have region_flag_safe flag, than player's can't bee rescurrect , is that posible to fix this problem ?
Thanks!


RE: can't rescurrect - Barnabus - 05-10-2012 11:11 PM

Thats new to me. Im going to have to reinstall UO and boot up the old server just to check that because I dont believe it, not saying your wrong I just dont remeber.

Although if it is true, there is a 1001 ways to solve it.

You could simply port the ghost else where ress it and send it back in a second, the body wont be an issue as the ghost must have walked into the safe region "no-one dies there".


RE: can't rescurrect - Alias - 05-11-2012 02:27 AM

(05-10-2012 11:11 PM)Barnabus Wrote:  Thats new to me. Im going to have to reinstall UO and boot up the old server just to check that because I dont believe it, not saying your wrong I just dont remeber.

Although if it is true, there is a 1001 ways to solve it.

You could simply port the ghost else where ress it and send it back in a second, the body wont be an issue as the ghost must have walked into the safe region "no-one dies there".
yeah, ofcourse i can teleport ghost somewhere else ( what i have already done ), but players who drink bottles ( example strenght ) dont get effect and so on Confused


RE: can't rescurrect - Barnabus - 05-11-2012 03:21 AM

Well im almost there, patched to 7.0.11.2, im gonna stop at the lastest in spherecrypt, boot up a server, drop a cartoon in a safe region, kill him then ress him, just to see. Like I said Ive not noticed this before.

Ill have a play and let you know!


RE: can't rescurrect - Alias - 05-11-2012 03:29 AM

Ok tyvm Barnabus Smile


RE: can't rescurrect - Barnabus - 05-11-2012 11:28 AM

Hi Again...

Well I said I'd get my old server on and let you know. (Had to patch twice took forever).Ranting

So anyhow now I know why I never had the problem you are speaking of, I have my own combat system.

I do not know which combat system you are using.
So I have to say sorry as I don't feel much help now.

Though I will demonstrate how I controlled spell casting in a safe region. Hopefully it will give you some Ideas about what you could do.

First of all here is the functions that checks the region flags on cast...
Code:
[FUNCTION f_SpellcastCheckRegionLawsOnPreCast]
REF1=<SERV.UID.<ARGV[0]>>    //CASTERUID
LOCAL.SPellNo=<ARGV[1]>        //SPELLNUMBER
IF <REF1.REGION.SAFE>==1 && !<f_combat_DoSpellProperties <ARGV[1]>>
    REF1.SYSMESSAGE @00029,,1 You cannot cast harmfull spells in a safe area!
    RETURN 1
ENDIF
IF <EVAL <LOCAL.SPellNo>>==57    // EarthQuake
    IF (STRMATCH(*tournament*,<REF1.REGION.NAME>))
        REF1.SYSMESSAGE @00029,,1 Earthquake cannot be cast in this area
        SERV.LOG <REF1.NAME> was prevented from casting Earth quake in <REF1.REGION.NAME>
        RETURN 1
    ENDIF
ENDIF
RETURN 0
And this function above "f_SpellcastCheckRegionLawsOnPreCast" is called from the spellselect trigger inside my players combat event.
The trigger and its code is shown below....
Code:
ON=@SpellSelect
    REF1=<SERV.UID.<ARGO.UID>> // Caster or Wand
    REF2=<SERV.UID.<UID>>       // Caster
    ARGN3=03
    IF <f_SpellcastCheckRegionLawsOnPreCast <REF2.UID>, <ARGN1>>||<f_combat_CheckForSpellPrevention <REF2.UID>, <ARGN1>>
        ACTION=-1
        RETURN 1
    ELSE
        IF <REF2.MANA> > <ARGN2>
            REF2.CTAG.ManaUse=<EVAL <REF2.MANA> - <ARGN2>>
            RETURN 6
        ELSE
            ACTION=-1
            RETURN 1
        ENDIF
    ENDIF
    RETURN 0
Look back at the first function "f_SpellcastCheckRegionLawsOnPreCast".
Now let me explain .... !<f_combat_DoSpellProperties <ARGV[1]>>
Its basically saying if the SpellNumber"<ARGV[1]>" comes out of f_combat_DoSpellProperties as a 0 then its an attack spell.

Now Ill show you this function "f_combat_DoSpellProperties" but I would suggest, and I suspect there is a better method of discovering if a spell is an attack or a passive spell. Anyhow I did it as shown below...

Code:
[FUNCTION f_combat_DoSpellProperties]
//Magery
LOCAL.PassiveSpell = 1

IF (<ARGV[0]>=1)        // Clumsy
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
        
ELIF (<ARGV[0]>=2)        // CreateFood
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
        
ELIF (<ARGV[0]>=3)        // FeebleMind
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=4)        // Heal
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=4)        // MagicArrow
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=6)        // NightSight
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=7)        // ReactiveArmor // Energy Armor Timer Eats Reg
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=8)        // Weaken
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1

    ELIF (<ARGV[0]>=9)        // Agility
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1

ELIF (<ARGV[0]>=10)    // Cunning
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1

    ELIF (<ARGV[0]>=11)    // Cure
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=13)    // MagicTrap
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
    ELIF (<ARGV[0]>=14)    // MagicUntrap
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=15)    // Protection
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
    ELIF (<ARGV[0]>=16)    // Strength
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=17)    // Bless
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
        
ELIF (<ARGV[0]>=19)    // MagicLock
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=20)    // Posion
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=21)    // Telekinesis
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=22)    // Teleport
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=23)    // MagicUnlock
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=24)    // WallOfStone
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=25)    // Archcure
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=26)    // Archprotection
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=27)    // Curse
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=28)    // FireField
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=29)    // GreaterHeal
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
    ELIF (<ARGV[0]>=30)    // Lightning
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=31)    // ManaDrain
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=32)    // Recall
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=33)    // BladeSpirits
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=34)    // DispelField
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=35)    // Incognito
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=36)    // MagicReflection
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
        
ELIF (<ARGV[0]>=37)    // MindBlast
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=38)    // Paralyze
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=39)    // PoisonField
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=40)    // SummonCreature
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=41)    // Dispel
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=42)    // EnergyBolt
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=43)    // Explosion
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=44)    // Invisibility
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=45)    // Mark
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=46)    // MassCurse
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=47)    // ParalyzeField
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=48)    // Reveal
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=50)    // EnergyField
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=51)    // FlameStrike
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=52)    // GateTravel
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=53)    // VampireMana
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=54)    // MassDispel
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=55)    // MeteorSwarm
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=56)    // Polymorph
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=57)    // Earthquake
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=58)    // Energy Vortex
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=59)    // Resurrection
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=60)    // AirElemental
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=61)    // Summon Daemonite
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=62)    // Earth Elemental
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=63)    // Fire Elemental
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=64)    // Water Elemental
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1

//Misc
ELIF (<ARGV[0]>=65)    // SummonUndead
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=66)    // AnimateDead
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=67)    // BoneArmor
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=68)    // Light
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=69)    // FireBolt
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=70)    // Hallucination
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1

//Alchemy
ELIF (<ARGV[0]>=71)    // Stone
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=72)    // Shrink
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=73)    // Refresh
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=74)    // Restore
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=75)    // Mana
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=76)    // Sustenance
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=77)    // Chameleon
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=78)    // BeastForm
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=79)    // MonsterForm
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=80)    // Forget
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=81)    // Gender Swap
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=82)    // Trance
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=83)    // ParticleForm
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=84)    // Shield
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=85)    // SteelSkin
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=86)    // StoneSkin
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=87)    // Regeneration
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=88)    // Enchantment
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
//Neromancy
ELIF (<ARGV[0]>=101)    // AnimateDead
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=103)    // CorpseSkin
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=104)    // CurseWeapon
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=105)    // EvilOmen
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
        
ELIF (<ARGV[0]>=106)    // HorrificBeast
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=107)    // LichForm
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=108)    // MindRot
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
        
ELIF (<ARGV[0]>=109)    // PainSpike
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=110)    // PoisonStrike
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=111)    // Strangle
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=112)    // SummonFamiliar
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=113)    // VampiricEmbrace
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=114)    // VengefulSpirit
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=115)    // Wither
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=116)    // Wraith Form
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=117)    // Exorcism
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
//Chivalry
ELIF (<ARGV[0]>=201)    // Cleanse by Fire
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=202)    // Close Wounds
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=203)    // Consecrate Weapon
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=204)    // Dispel Evil
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=205)    // Divine Fury
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=206)    // Enemy of One
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=207)    // Holy Light
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=208)    // Noble Sacrifice
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=209)    // Remove Curse
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=210)    // Sacred Journey
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
//Bushido
ELIF (<ARGV[0]>=401)    // Honorable Execution
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=402)    // Confidence
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=403)    // Evasion
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=404)    // Counter Attack
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=405)    // Lightning Strike
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=406)    // Momentum Strike
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
//Ninjitsu
ELIF (<ARGV[0]>=501)    // Focus Attack
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=502)    // Death Strike
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=503)    // Animal Form
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=504)    // Ki Attack
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=505)    // Surprise Attack
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=506)    // Backstab
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=507)    // Shadowjump
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=508)    // Mirror Image
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1

//SpellWeaving
ELIF (<ARGV[0]>=601)    // Arcane Circle
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=602)    // Gift of Renewal
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=603)    // Immolating Weapon
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=604)    // Attunement
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=605)    // Thunderstorm
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=606)    // Nature's Fury
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=607)    // Summon Fey
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=608)    // Summon Fiend
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=609)    // Reaper Form
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=610)    // Wildfire
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=611)    // Essence of Wind
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=612)    // Dryad Allure
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=613)    // Ethereal Voyage
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=614)    // Word of Death
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=615)    // Gift of Life
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=616)    // Arcane Empowerment
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1

//Mysticism
ELIF (<ARGV[0]>=678)    // NetherBolt
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=679)    // HealingStone
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=680)    // PurgeMagic
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=681)    // Enchant
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=682)    // Sleep
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=683)    // EagleStrike
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=684)    // AnimatedWeapon
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=685)    // StoneForm
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=686)    // SpellTrigger
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=687)    // MassSleep
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=688)    // CleansingWinds
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=689)    // Bombard
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=691)    // HailStorm
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=693)    // RisingCollossus
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1

//Bard
ELIF (<ARGV[0]>=701)    // Inspire
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=702)    // Invigorate
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=703)    // Resilience
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=704)    // Perseverance
    LOCAL.PassiveSpell = 1
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=705)    // Tribulation
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=706)    // Despair
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
//Traps
ELIF (<ARGV[0]>=1001)    // Dart
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=1002)    // Explosion
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
    
ELIF (<ARGV[0]>=1003)    // Poison
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1

ELSE
    LOCAL.PassiveSpell = 0
    LOCAL.DefaultSpell = 1
ENDIF
RETURN <EVAL <LOCAL.PassiveSpell>>

[EOF]

So as you can see Alias, in a safe area my players can cast ress, heal, cast strength, (Pots run on same system), but they cannot cast attack spells.

I hope this gives you some ideas, sorry I couldnt be more help.

Nite Dude


RE: can't rescurrect - Alias - 05-11-2012 09:52 PM

Tyvm Barnabus, but i didn't understand well, where to put everything, maybe you could add it to my combo scp ?
I could pm you it if you can Wink


RE: can't rescurrect - Crusader - 05-11-2012 10:29 PM

well, as far as i understood, u have to basically put the following code into an event for all the players:
Code:
ON=@SpellSelect
    REF1=<SERV.UID.<ARGO.UID>> // Caster or Wand
    REF2=<SERV.UID.<UID>>       // Caster
    ARGN3=03
    IF <f_SpellcastCheckRegionLawsOnPreCast <REF2.UID>, <ARGN1>>||<f_combat_CheckForSpellPrevention <REF2.UID>, <ARGN1>>
        ACTION=-1
        RETURN 1
    ELSE
        IF <REF2.MANA> > <ARGN2>
            REF2.CTAG.ManaUse=<EVAL <REF2.MANA> - <ARGN2>>
            RETURN 6
        ELSE
            ACTION=-1
            RETURN 1
        ENDIF
    ENDIF
    RETURN 0


than u should put the other pieces of code in another script or whereever u want.

@barnabus
i might suggest u to use the SPELLFLAG_HARM to see if it's a dangerous spell or not?


RE: can't rescurrect - Barnabus - 05-11-2012 10:51 PM

LOL Exellect Crusader !!!! I have to laugh at [FUNCTION f_combat_DoSpellProperties] now! Big Grin

OK so we can now change that stupid function thanks to Crusader, and I believe it would be something like this...
Code:
[FUNCTION f_combat_DoSpellProperties]
IF (SERV.SPELL.<ARGV[0]>.FLAGS>&SPELLFLAG_HARM)
    RETURN 0
ELSE
    RETURN 1
ENDIF

Ahahahahah @ me....

ok Alias, let me know what system you are using.....

You must put that code into the players event script as described and then. Just drop the rest in somewhere.
And replace my stupid function [FUNCTION f_combat_DoSpellProperties] with the one above and it should be all good then.



[/CODE]


RE: can't rescurrect - Crusader - 05-11-2012 10:58 PM

plus u can define groups, as stated here http://forum.spherecommunity.net/showthread.php?tid=1288