Вот покопался на форумах и нашел следующее:
Код
[EVENTS e_antiloot]
ON=@ItemDClick
return <f_antilooting_dclick>
ON=@ItemTargOn_Item
return <f_antilooting_targon>
[FUNCTION f_antilooting_dclick] // Проверка при клике на труп.
if (<isgm> ) || (<act.type>!=t_corpse)
return 0
elif (<act.link>==04FFFFFFF) // это труп NPC
elif (<act.more2>==<uid> )
return 0 // это труп NPC, убитого мной
if (!<uid.<act.more2>.ischar> )
return 0 // это труп NPC, убитого неизвестно кем
elif (<memoryfindtype.memory_guild.uid> ) && (<memoryfindtype.memory_guild.link>==<uid.<act.more2>.memoryfindtype.memory_guild.link> )
return 0 // это труп NPC, убитого моим согильдийцем
elif (<act.timer> > <eval (<serv.CorpseNPCDecay>+-1)*60> )
sysmessage You must wait <eval <act.timer>+-((<serv.CorpseNPCDecay>+-1)*60)> seconds to loot this corpse.
return 1 // это труп NPC, убитого не мной
endif
else // это труп игрока
if (<act.link>==<uid> )
return 0 // это мой труп
elif (<eval <act.region.tag.nolooting>> )
sysmessage No looting is allowed here.
return 1 // грабёж чужих трупов здесь запрещён
elif (!<uid.<act.more2>.ischar> )
return 0 // это труп игрока, убитого неизвестно кем
elif (<memoryfindtype.memory_guild.uid> ) && (<memoryfindtype.memory_guild.link>==<act.link.memoryfindtype.memory_guild.link> )
return 0 // это труп моего согильдийца
elif (<act.more2>==<uid> )
return 0 // это труп убитого мной игрока
elif (<memoryfindtype.memory_guild.uid> ) && (<memoryfindtype.memory_guild.link>==<uid.<act.more2>.memoryfindtype.memory_guild.link> )
return 0 // это труп игрока, убитого моим согильдийцем
elif (<act.timer> > <eval (<serv.CorpsePlayerDecay>+-5)*60> )
sysmessage You must wait <eval <act.timer>+-((<serv.CorpsePlayerDecay>+-5)*60)> seconds to loot this corpse.
return 1 // это труп игрока, убитого не мной
endif
endif
[FUNCTION f_antilooting_targon] // Проверка при использовании оружия на трупе.
if (<isgm> ) || (<targ.type>!=t_corpse) || (!strmatch(t_weapon*,<act.type> )
return 0
elif (<targ.link>==04FFFFFFF) // это труп NPC
if (<targ.more2>==<uid> )
return 0 // это труп NPC, убитого мной
elif (!<uid.<targ.more2>.ischar> )
return 0 // это труп NPC, убитого неизвестно кем
elif (<memoryfindtype.memory_guild.uid> ) && (<memoryfindtype.memory_guild.link>==<uid.<targ.more2>.memoryfindtype.memory_guild.link> )
return 0 // это труп NPC, убитого моим согильдийцем
elif (<targ.timer> > <eval (<serv.CorpseNPCDecay>+-1)*60> )
sysmessage You must wait <eval <targ.timer>+-((<serv.CorpseNPCDecay>+-1)*60)> seconds to loot this corpse.
return 1 // это труп NPC, убитого не мной
endif
else // это труп игрока
if (<targ.link>==<uid> )
return 0 // это мой труп
elif (<eval <targ.region.tag.nolooting>> )
sysmessage No looting is allowed here.
return 1 // грабёж чужих трупов здесь запрещён
elif (!<uid.<targ.more2>.ischar> )
return 0 // это труп игрока, убитого неизвестно кем
elif (<memoryfindtype.memory_guild.uid> ) && (<memoryfindtype.memory_guild.link>==<targ.link.memoryfindtype.memory_guild.link> )
return 0 // это труп моего согильдийца
elif (<targ.more2>==<uid> )
return 0 // это труп убитого мной игрока
elif (<memoryfindtype.memory_guild.uid> ) && (<memoryfindtype.memory_guild.link>==<uid.<targ.more2>.memoryfindtype.memory_guild.link> )
return 0 // это труп игрока, убитого моим согильдийцем
elif (<targ.timer> > <eval (<serv.CorpsePlayerDecay>+-5)*60> )
sysmessage You must wait <eval <targ.timer>+-((<serv.CorpsePlayerDecay>+-5)*60)> seconds to loot this corpse.
return 1 // это труп игрока, убитого не мной
endif
endif
установка:
можно сделать таблетку или столб с добавлением евента
Код
ON=@DCLICK //если таблетка будет ON=@STEP
SRC.events +e_antiloot
или же добавить в spherestables.scp (если не ошибаюсь) на ON=@LOGIN