Jump to content

KING OF HOUSE SKRIPT


iTaLiAnMaD

Recommended Posts

Posted (edited)

Written by UVA ZZZ aka Jax

alias koth.password !return YOURPASSWORDHERE
alias koth.hpick {
 var %a = $iif($mta.game($1) == GTA:3,AREA1,AREA2)
 !return $readini(mta.data.ini,%a,$ini(mta.data.ini,%a,$rand(1,$ini(mta.data.ini,%a,0))))
}
alias koth.owner {
 !hadd -m koth lastowner $hget(koth,owner)
 if ($mta.area($1,$mta.getid($1,$hget(koth,owner))) != $hget(koth,house2) || $hget(koth,owner) == No-one) {
   var %a = 0,%b,%c,%d
   while (%a < $mta.maxplayers($1)) {
     if ($mta.name($1,%a) != Unknown && $mta.health($1,%a) > 0) {
       if ($mta.area($1,%a) == $hget(koth,house2)) {
         if (%b) {
           if ($mta.health($1,%a) > %c) {
             %c = $mta.health($1,%a)
             %d = $mta.name($1,%a)
           }
         }
         %c = $mta.health($1,%a)
         %d = $mta.name($1,%a)
         !inc %b
       }
     }
     !inc %a
   }
   if (%d) koth.newown %d
   if (%b) {    
     if (!$readini(koth.ini,clans,%d)) !return %d
     else !return $readini(koth.ini,clans,%d) %d
   }
   else !return No-one
 }
 elseif (!$readini(koth.ini,clans,$hget(koth,owner))) !return $hget(koth,owner)
 else !return $readini(koth.ini,clans,$hget(koth,owner)) $hget(koth,owner)
}
alias koth.nxtmember {
 var %a = 0
 while (%a < $mta.maxplayers($1)) {
   if ($readini(koth.ini,clans,$mta.name($1,%a)) == $2 && $mta.health($1,%a) > 0 && %a != $3) {
     !hadd -m koth owner $mta.name($1,%a)
     !return %a
   }
   !inc %a
 }
 !return -1
}      
on *:UNLOAD:{
 !.timerkoth off
 !.timerkothcheck off
}
on *:SIGNAL:mta.disconnect:{
 !.timerkoth off
 !.timerkothcheck off
}
on *:SIGNAL:mta.quit:{
 !.timerkoth off
 !.timerkothcheck off
}
on *:SIGNAL:mta.command:{
 var %a = $iif($4,$iif($mta.name($1,$4) != Unknown,$4,$mta.getid($1,$4)),$2)
 if ($readini(koth.ini,login,$mta.name($1,$2))) {
   if ($3 == !checkdelay) {
     if ($4 isnum 1-20) {
       set %checkdelay $4
       !.timerkothcheck off
       !.timerkothcheck 0 $4 koth.check $1
       mta.say $1 Koth > Check-Delay set to: $4 seconds
     }
     else mta.say $1 Koth > Check-Delay currently set to: $iif(%checkdelay,%checkdelay,3) seconds
   }
   elseif ($3 == !koth) {
     if ($4 == on) {
       if ($hget(koth,status) != on) koth.start $1
       else mta.say $1 Koth > Status: Online $chr(124) Duration: $iif(!$readini(koth.ini,data,start),Unknown,$duration($calc($ctime - $readini(koth.ini,data,start))))
     }
     elseif ($4 == off) {
       if ($hget(koth,status) == on) koth.stop $1
       else mta.say $1 Koth > Status: Offline $chr(124) Duration: $iif(!$readini(koth.ini,data,stop),Unknown,$duration($calc($ctime - $readini(koth.ini,data,stop))))
     }
     else mta.say $1 Koth > Status: $iif($hget(koth,status) == on,Online,Offline) $chr(124) Duration: $iif(!$readini(koth.ini,data,$iif($hget(koth,status) == on,start,stop)),Unknown,$duration($calc($ctime - $readini(koth.ini,data,$iif($hget(koth,status) == on,start,stop)))))
   }
   elseif ($3 == !sethouse) {
     if ($4) {
       var %a = 0,%b
       while (%a <= $ini(mta.data.ini,$iif($mta.game($1) == GTA:3,AREA1,AREA2),0)) {
         if ($4 isin $readini(mta.data.ini,$iif($mta.game($1) == GTA:3,AREA1,AREA2),$ini(mta.data.ini,$iif($mta.game($1) == GTA:3,AREA1,AREA2),%a))) {
           !hadd -m koth house $gettok($readini(mta.data.ini,$iif($mta.game($1) == GTA:3,AREA1,AREA2),$ini(mta.data.ini,$iif($mta.game($1) == GTA:3,AREA1,AREA2),%a)),1,32)
           !hadd -m koth house2 $readini(mta.data.ini,$iif($mta.game($1) == GTA:3,AREA1,AREA2),$ini(mta.data.ini,$iif($mta.game($1) == GTA:3,AREA1,AREA2),%a))
           %b = 1
           !break
         }
         !inc %a
       }
       if (%b) {
         mta.say $1 Koth > House set to: $hget(koth,house)
       }
       else mta.say $1 $mta.name($1,$2) $+ , area: $+(',$4,') not found!
     } 
     else mta.say $1 $mta.name($1,$2) $+ , Syntax: !sethouse 
   }      
 }
 elseif ($3 == !addclan) {
   if ($4) {
     if ($4 isin $mta.name($1,$2)) {
       if ($findtok($readini(koth.ini,data,clanlist),$4,1,44) == $null) {
         !writeini -n koth.ini clans $mta.name($1,$2) $4
         !writeini -n koth.ini data clanlist $iif(!$readini(koth.ini,data,clanlist),$4,$addtok($readini(koth.ini,data,clanlist),$4,44))
         mta.say $1 Koth > Clan: $4 Added $chr(124) By: $mta.name($1,$2) 
       }
       else mta.say $1 $mta.name($1,$2) $+ , Clan: $4 already exists!
     } 
     else mta.say $1 $mta.name($1,$2) $+ , $+(',$4,') isn't in your name!
   }
   else mta.say $1 $mta.name($1,$2) $+ , Syntax: !addclan 
 }
 elseif ($3 == !join) {
   if ($4) {
     if ($findtok($readini(koth.ini,data,clanlist),$4,1,44) != $null) {
       if ($4 isin $mta.name($1,$2)) {
         !writeini -n koth.ini clans $mta.name($1,$2) $4
         mta.say $1 Koth > $mta.name($1,$2) added to $4 clan
       }
       else mta.say $1 $mta.name($1,$2) $+ , $+(',$4,') isn't in your name!
     }
     else mta.say $1 $mta.name($1,$2) $+ , Clan: $4 doesn't exist!
   }
   else mta.say $1 $mta.name($1,$2) $+ , Syntax: !join 
 }
 elseif ($3 == !leave) {
   if ($readini(koth.ini,clans,$mta.name($1,$2))) {
     mta.say $1 Koth > $mta.name($1,$2) has left $readini(koth.ini,clans,$mta.name($1,$2))
     !remini koth.ini clans $mta.name($1,$2)
   }
   else mta.say $1 $mta.name($1,$2) $+ , you havn't joined a clan!
 }
 elseif ($3 == !house) mta.say $1 Koth > Current House: $hget(koth,house)
 elseif ($3 == !owner) mta.say $1 Koth > Current Owner: $iif($readini(koth.ini,clans,$hget(koth,owner)),$readini(koth.ini,clans,$hget(koth,owner)) $chr(124) Landlord: $hget(koth,owner),$hget(koth,owner)) $chr(124) Duration: $duration($calc($ctime - $iif($hget(koth,starttime),$hget(koth,starttime),0)))
 elseif ($3 == !clan) {
   if (%a != -1) mta.say $1 $iif($readini(koth.ini,clans,$mta.name($1,%a)),$mta.name($1,%a) $+ $chr(44) Clan: $readini(koth.ini,clans,$mta.name($1,%a)),$mta.name($1,%a) hasn't joined a clan!)
   else mta.say $1 $mta.name($1,$2) $+ , Error: ID not present
 }
 elseif ($3 == !kills) {
   if (%a != -1) mta.say $1 $mta.name($1,%a) has a total of $iif($readini(koth.ini,kills,$mta.name($1,%a)),$readini(koth.ini,kills,$mta.name($1,%a)),0) kills
   else mta.say $1 $mta.name($1,$2) $+ , Error: ID not present
 }
 elseif ($3 == !area) {
   if (%a != -1) mta.say $1 $mta.name($1,%a) is at: $mta.area($1,%a)
   else mta.say $1 $mta.name($1,$2) $+ , Error: ID not present
 }
}
on *:SIGNAL:mta.pm:{
 if ($3 == kothlogin) {
   if ($4 == $koth.password) {
     if (!$readini(koth.ini,login,$mta.name($1,$2))) {
       mta.msg $1 $2 You have logged in to the KOTH script
       !writeini koth.ini login $mta.name($1,$2) 1
     }
     else mta.msg $1 $2 You are already logged into the KOTH script!
   }
   else mta.msg $1 $2 KOTH Login: incorrect password
 }
}
on *:SIGNAL:mta.part:{
 !remini koth.ini login $mta.name($1,$2)
}
on *:SIGNAL:mta.kill:{
 var %a = $readini(koth.ini,clans,$mta.name($1,$3))
 if ($hget(koth,owner) != No-one) {
   if ($mta.area($1,$2) == $hget(koth,house2) || $mta.area($1,$3) == $hget(koth,house2)) {
     if ($readini(koth.ini,clans,$hget(koth,owner))) {
       if ($mta.name($1,$2) == $hget(koth,owner)) {
         if ($mta.name($1,$3) != Unknown && $2 != $3) { 
           koth.newown $mta.name($1,$3)
           if ($readini(koth.ini,clans,$mta.name($1,$2)) == %a) {
             mta.say $1 Koth > $mta.name($1,$3) is the new Landlord!
           }
           elseif ($koth.nxtmember($1,$readini(koth.ini,clans,$mta.name($1,$2)),$2) != -1) {
             mta.say $1 Koth > $hget(koth,owner) has become the new Landlord!
           }
           else mta.say $1 Koth > $iif($readini(koth.ini,clans,$mta.name($1,$3)),$mta.name($1,$3) $+($chr(40),$readini(koth.ini,clans,$mta.name($1,$3)),$chr(41)),$mta.name($1,$3)) has taken over: $hget(koth,house)
         }
         elseif ($koth.nxtmember($1,$readini(koth.ini,clans,$mta.name($1,$2)),$2) != -1) {
           mta.say $1 Koth > $hget(koth,owner) has become the new Landlord!
         }
         else {
           mta.say $1 Koth > $mta.name($1,$2) has lost control of the house!
           !hadd -m koth owner No-one
           !hadd -m koth starttime $ctime
         }
       }
       elseif ($mta.name($1,$3) == $hget(koth,owner) || %a == $readini(koth.ini,clans,$hget(koth,owner))) {
         if ($readini(koth.ini,clans,$mta.name($1,$2)) == %a) {
           mta.say $1 Koth > %a have killed one of their own!
         }
         else {
           !writeini -n koth.ini kills $mta.name($1,$3) $calc($readini(koth.ini,kills,$mta.name($1,$3)) + 1)
           !writeini -n koth.ini clankills %a $calc($readini(koth.ini,clankills,%a) + 1)
           mta.say $1 Koth > %a Killed an Intruder $chr(124) Total: $readini(koth.ini,clankills,$readini(koth.ini,clans,$mta.name($1,$3)))
         }
       }
     } 
     elseif ($mta.name($1,$2) == $hget(koth,owner)) {
       if ($mta.name($1,$3) != Unknown && $2 != $3) { 
         koth.newown $mta.name($1,$3)
         mta.say $1 Koth > $iif($readini(koth.ini,clans,$mta.name($1,$3)),$mta.name($1,$3) $+($chr(40),$readini(koth.ini,clans,$mta.name($1,$3)),$chr(41)),$mta.name($1,$3)) has taken over: $hget(koth,house)
       }
       else {
         mta.say $1 Koth > $mta.name($1,$2) has lost control of the house!
         !hdel koth owner
         !hadd -m koth starttime $ctime
       }
     }
     elseif ($mta.name($1,$3) == $hget(koth,owner)) {
       !writeini -n koth.ini kills $mta.name($1,$3) $calc($readini(koth.ini,kills,$mta.name($1,$3)) + 1)
       mta.say $1 Koth > $mta.name($1,$3) Killed an Intruder $chr(124) Total: $readini(koth.ini,kills,$mta.name($1,$3))
     }
   }
 }
}
alias koth.start {
 !hadd -m koth status on
 !writeini -n koth.ini data start $ctime 
 var %a = $koth.hpick($1)
 !hadd -m koth house $gettok(%a,1,32)
 !hadd -m koth house2 %a
 !hadd -m koth starttime $ctime
 !hadd -m koth owner No-one
 if ($hget(koth,house2) != Unknown) {    
   var %a = $koth.owner($1),%b = $iif($numtok(%a,32) > 1,$gettok(%a,2,32),%a)
   mta.say $1 - Koth Activated - 
   mta.say $1 Koth > House: $hget(koth,house) $chr(124) Owner: $gettok(%a,1,32) $iif($numtok(%a,32) > 1,$chr(124) Landlord: %b,)
   if (!%checkdelay) set %checkdelay 5
   !.timerkothcheck 0 %checkdelay koth.check $1
   !.timerkoth 0 60 koth.current $1
 }
 else mta.say $1 House getin error!
}
alias koth.stop {
 !hdel koth status
 !writeini -n koth.ini data stop $ctime
 mta.say $1 - Koth Deactivated -
 !.timerkothcheck off
 !.timerkoth off
}
alias koth.check {
 var %a = $koth.owner($1),%b = $iif($numtok(%a,32) > 1,$gettok(%a,2,32),%a)
 if (%b != $hget(koth,lastowner)) {
   if (%b == No-one) {    
     mta.say $1 Koth > $hget(koth,lastowner) has left the house!
     !hadd -m koth starttime $ctime
     !hadd -m koth owner No-one
   }
   else mta.say $1 Koth > %b has taken over: $hget(koth,house)
 }
} 
alias koth.current {
 var %a = $koth.owner($1),%b = $iif($numtok(%a,32) > 1,$gettok(%a,2,32),%a)
 mta.say $1 Koth > Owner: $gettok(%a,1,32) $iif($numtok(%a,32) > 1,$chr(124) Landlord: %b,) has owned: $hget(koth,house) for $duration($calc($ctime - $hget(koth,starttime)))
}
alias koth.newown {
 !hadd -m koth owner $1
 !hadd -m koth starttime $ctime
}

Edited by Guest
Posted

BRO tahnkx you so much I needed this and you gave me...thankx...but One yhing..can you tell me how yo set the house point and the other basical commands????

Thankx bro

Posted

KFC thankx for your reply but I don't know the Commands to start that script..If you can tell me all commands I can understand to use it..plz help me I can't udnerstand mirc scripts!!!

Thankx

p.s. I cant login in KOTH how must I do?

Posted

another thing see other post of this topic...is this script works right with vice city?? I play with vice city MTA and no GTA:3 mta..tell me commands to login and start game..becuase I inserted my password in the specific field on the script but what kind of password is it=??admin+?? then tell me why if I type !koth on it doesn't start thankx KFC

Posted

2 things: why bother asking for a script if you have absolutely no clue as to how to use it?

and please, use the edit button. double posts are deeply discouraged here.

Posted

bro help me I don't know how to use that script and I can't find something on the web so I can only post in the forum...plz tell me all commands into this script!!!

Posted

Yep, done this one this morning for ya :wink:

..::Commands::..

!koth [on/off]

!checkdelay (area detection - can get cpu intensive)

!sethouse

!addclan

!join

!leave

!house

!owner

!clan

!kills

!area

....have fun :P

(thanx to XcR for hosting 8))

for password type /msg kothlogin

Posted

sorry for sekond question...another thing bro KFCkungfu...How can set like House ammunation roof?? How can I type? plz let me see your sentence about set a place like house...thankx

Posted

Just edit posts instead of posting new ones...

If you are using the latest GRS all of the locations are there already... you just go to the ammunation roof and type !area whatever it says you type !sethouse or part of the loc name

Posted

kfckungfu sorry but when I type an area wrote in the message !loc or !area it says me: not found

I type a sentence like this: !sethouse downtown, or !sethouse ocean beach or !sethouse escobar....it says always... not found!!!!

I would like to know how save other place with mta.area skript, I think it's possible,so BRO plz help me to set this fucking place:) THnkx for your quite for me and I learn many thing read your post:)

Thankx

Posted

you are amazingly patient kung.

iTaLiAnMaD: it would be a good idea to read the grs and mtama info that is pllentiful and try and fiue it out from those before bobarding people with questions. all the info is available

Posted

Surely there must be a tutorial somewhere about how to script if he dosnt really know how to use them.

Posted

I tried like KFCkungfu told me but it say always not FOUND...for example when I'm at airport I write !loc to know my location...it says me.. Terminal Escobar-International Vice-City-Mainland'

....if I try to type !sethouse terminal escobar or all loc position it says me (that area)NOT FOUND, can KFCkungfu help me?

Plz all harderplayers help me..I'm from italy and I'm sorry that I post many reply but I can't understand many english words so if you can explayn me..i'm sorry

Thankx

Posted

If you don't have the area's set up you can use this script.

I got this from http://www.aeron.tk

It's best to use a heli when you set your area... The instructions are in the top of this script.

Basically you type !c when you get there and then !p at the corners of the place to set the border. When you are done type !s

Sloth: I just remember how bad I wanted to get KOTH running when Jax helped me... guess Im paying it forward :?

;Area-setup script
;This scripts makes costum area that are not defined yet.
;Steps to set a area:
;Clear the buffer, type: !c
;Stand in every corner of the area and type: !p
;Save the area with: !s
;Name the area as followed: 

on *:SIGNAL:mta.command: {
 ;!c clears the buffer with pointers
 if (!c == $3) {
   !unset %area
   mta.say $1 Area cleared.
 }
 ;!p sets a area point
 if (!p == $3) {
   %area = %area $+ $chr(44) $+ $round($mta.location($1,$2,x),4) $+ $chr(44) $+ $round($mta.location($1,$2,y),4)
   mta.say $1 $calc($count(%area,$chr(44)) /2) point(s) set 
 }
 ;!s saves the area to mta.data.ini
 if (!s == $3) {
   var %a
   if ($did(mta,$1 $+ 33) == GTA:3)  !writeini " $+ $scriptdirmta.data.ini" AREA1 $right(%area,-1) $4-
   elseif ($did(mta,$1 $+ 22) == Stunt) !writeini " $+ $scriptdirmta.data.ini" AREA2 $right(%area,-1) $4-
   else {
     !writeini " $+ $scriptdirmta.data.ini" AREA2 $right(%area,-1) $4-
     !writeini " $+ $scriptdirmta.data.ini" AREA3 $right(%area,-1) $4-
   }
   !unset %area
   mta.say $1 Area saved as " $+ $4-"
 }
 ;!a Tells you in which area you are
 if (!a == $3) {
   mta.say $1 $mta.area($1,$2)
 }
}

Posted

thankx KFCkungfu for your patient...I'm sorry but I use your script and It work right, but I don't know where it put my saved place,when I type !sethouse it says NOT FOUND!!!!!!!:(

for example:

I spawn robber, after spawned I type 1)!c 2)!p 3)!s robber...it says me saved robber...ok...then I login my koth and i type !sethouse robber...it says me tobber not found!!!!:(

Where my save is place when DO I type !s robber??????

THnkx bro for your quite for me....

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...