Sistema de guards Modificación Similar a OSI :
Explicación:
1º Un PK Puede entrar en guardias.
2º Un PK pueda defenderse, si le ataca un azul.
En principio usaremos los guardias actuales puesto que esto es una idea y una base no un script terminado.
1º Un PK Puede entrar en guardias.
- Modificamos los guardias, por unos creados por nosotros.
En la región que queremos usaremos el comando para introducir este guardia nuevo, que permite que los pks estén en ciudad.
REGION.TAG.OVERRIDE.GUARDS=c_TEST_guard
Los guardias unicamente mataran PKS criminales.[CHARDEF c_TEST_guard]
id=C_H_GUARD
NAME=#NAMES_HUMANMALE the Cove Guard
ID=C_MAN
DAM=15,20
ARMOR=20
DESIRES=i_gold
ON=@Create
NPC=brain_guard
//ALIGNMENT=GOOD
COLOR=colors_skin
STR={151 165}
DEX={151 165}
INT={151 165}
DETECTINGHIDDEN={90.0 100.0}
FORENSICS={90.0 100.0}
FENCING={90.0 100.0}
PARRYING={90.0 100.0}
SWORDSMANSHIP={90.0 100.0}
WRESTLING={90.0 100.0}
MACEFIGHTING={90.0 100.0}
MAGICRESISTANCE={90.0 100.0}
TACTICS={90.0 100.0}
//STANDARD GUARD EQUIPMENT=PLATE ARMOR,i_halberd
//BLACKTHORN GUARD EQUIPMENT=PLATE ARMOR,RED OVER-ARMOR,DOUBLE BATTLE AXE,CHAOS SHIELD
//LORDBRITISH GUARD EQUIPMENT=PLATE ARMOR,BLUE OVER-ARMOR,VIKING SWORD,ORDER SHIELD
ITEMNEWBIE=i_lantern
ITEMNEWBIE=random_male_hair
COLOR=colors_hair
ITEMNEWBIE=random_facial_hair
COLOR=match_hair
ON=@NPCRestock
ITEM=i_shirt_plain
COLOR=colors_all
ITEM=random_pants
COLOR=colors_all
ITEM=i_platemail_chest
ITEM=i_platemail_leggings
ITEM=i_platemail_arms
ITEM=random_over_armor
COLOR=colors_all
ITEM=i_halberd
ITEM=random_coin_purse
ITEM=i_mt_horse_gray // on horse.
color=07a1
ON=@NPCRefuseItem
SAY I cannot be bribed. be gone.
return 1
on=@attack
if (<src.isplayer>) && (<src.kills> > 5) &! (<src.flags>&statf_criminal)
remove
return 1
endif
on=@hit
if (<src.isplayer>) && (<src.kills> > 5) &! (<src.flags>&statf_criminal)
remove
return 1
endif
2º PK pueda lotear a un azul matarlo y lotearlo justamente, sin ser acto criminal.
Bueno esto es una base mas o menos están los códigos faltarían cosas como:on=@gethit
// SRC PJ AZUL
// UID PJ PK
if (<src.isplayer>) && (<src.kills> < 5)
src.tag.ata=<uid>
src.primer_atacante <uid>
endif
[function primer_atacante]
FORCHARMEMORYTYPE memory_sawcrime
if (<link.uid>=<args>)
return 1
endif
ENDFOR
if !(<uid.<tag.ata>.findid.I_defensa_pk.link>=<src.ui d>)
uid.<tag.ata>.marcar_gris <uid>
uid.<tag.ata>.sysmessage=@0 Te ataca un Azul ahora puedes darle muerte!.
uid.<uid>.tag.ata=
endif
return 0
[Itemdef I_defensa_pk]
Name=Defensa PK
ID=i_memory
ON=@CREATE
attr=attr_decay|attr_newbie
[function marcar_gris]
if !(<findid.I_defensa_pk.link>=<args>)
newitem i_defensa_pk
new.color memory_sawcrime
new.more1 04
new.more2 <serv.time>
new.morep <p>
new.link=<args>
new.cont=<uid>
new.timer=100 // tiempo que lo veríamos gris al azul.
endif
* Hacer un sistema mejorado basado en quien ataca primero a quien;
-Si primero lo hace el PK , seria como cuando un Azul Ataca a otro Azul este lo ve "criminal", y si entra en guardias lo matarían ya que seria criminal para este.
-Si lo hace el Azul este seria gris durante X tiempo, solo para el PK, dicho tiempo debería ir aumentándose cuando estén luchando, si finaliza ese tiempo, sin recibir ataque pues pasaría a ser azul, si matas azul sin defenderte es acto criminal, "guards" y moriría el PK.
* Dentro la ciudad el comportamiento ha de ser como el de un azul, si tiras masivo y le da a azules, los guardias te matarían.
* Faltaría un comando que te diga si puedes entrar o no y los segundos.
* Arreglar bugs, esto esta hecho por encima para ver el lado funcional, pero puede contener fallos.