Jump to content

MTA:SA Public Release Script - PRS:1.3 Out Now!


Scooby

Recommended Posts

can you make !vote command for immetiately changing the map and not only for next map? :) and then for example !votenext .... for the next map :D

Im not 100% sure what u mean, are you sure what u need isnt already added? have you read the the commands file? :lol:

There are many commands already for changing maps for admins, but im guessing ur talking about the public?

The !votemap command for players is set that way because someone may be busy racing, on a great time and they wouldnt want the race changing instantly.

The command !new is similar but is an instant mapchange, like what i think ur asking for, although it starts a new random map unless u use !votemap first.

Then theres always the option of paying a little loose change to pick the next map.

if im on the wrong lines here maybe you can explain a little better :mrgreen:

either way post here and let me know.

Link to comment
  • Replies 644
  • Created
  • Last Reply

Top Posters In This Topic

can you make !vote command for immetiately changing the map and not only for next map? :) and then for example !votenext .... for the next map :D

Im not 100% sure what u mean, are you sure what u need isnt already added? have you read the the commands file? :lol:

There are many commands already for changing maps for admins, but im guessing ur talking about the public?

The !votemap command for players is set that way because someone may be busy racing, on a great time and they wouldnt want the race changing instantly.

The command !new is similar but is an instant mapchange, like what i think ur asking for, although it starts a new random map unless u use !votemap first.

Then theres always the option of paying a little loose change to pick the next map.

if im on the wrong lines here maybe you can explain a little better :mrgreen:

either way post here and let me know.

Scooby he means when you votemap and all the votes are there it dont start as the next map but it will start immetiately (Or how the fuck you will spel it)

Link to comment

well if this is the case then !new is the instant mapchange vote system, this will change the map instantly but requires more votes :)

this can be very handy if theres just a few of u in a server and none of u are admins.

if you dont want a a random map, u can vote a map to be next then type !new.

Link to comment
ok :mrgreen:

edit:

another question :shock:

possible to show aliases to admin when a player joins? :)

Yeah that shouldnt be too hard, ok try adding this code,

first off in ur script find: Alias newnick

then move down the script to the very last } in that alias.

add this code 'above' the last bracket in that alias.

  if ($hget(prsalias,%b) != $null) { 
    var %d = 0 
    while (%d < %loop) { 
      if ($prs.level($1,%d) > 0) mta.pm $1 %d %a $+ 's Aliases: $replace($hget(prsalias,%b),$chr(44),$chr(32),%a,$chr(32)) 
      !inc %d 
    } 
  } 

make sure you put this in the right place or your script will probably stop working.

since i dont have a server running at the moment i havent tested this script so ul have to let me know how it is and if u need any changes to it.

Link to comment
it works pretty well :)

it just doesn't show the players name

{SOK}Altair[PL] joined (IP:***********) 
<Admin>: [b]'s Aliases[/b]: {SOK}Altair[PL] 
  

but that's not a big problem I think :D

no, thats not right :lol:

its not supposed to work like that, i guess im gonna have to run the script to get it working properly.

earlier in that alias, at the top, it defines %a as the players name, so im not sure how come it doesnt show lower down the alias in that line,

and since it doesnt work at the beginning of the line (%a is the players name which isnt showing),

then more than likely the aliases arent working right either (since it uses %a in the check)

and finally, its not supposed to pm u if the player has no other aliases (to cut down on spam) :mrgreen:

leave it with me and i'll post a tested working version.

--------------------------------------------------------------------

*Edit*

Ok, ive changed a few bits, this should work now, just replace this with what u already added at the bottom of that alias.

  var %a = $mta.nick($1,$2),%b = $mta.ip($1,$2),%c = $replace($hget(prsalias,%b),$chr(44),$chr(32),%a,$null) 
  if (%c != $null) { 
    var %d = 0 
    while (%d < %loop) { 
      if (($prs.level($1,%d) > 0) && (%d != $2)) mta.pm $1 %d %a $+ 's Aliases: %c 
      !inc %d 
    } 
  } 
  

ive just added the variables again since they werent carrying from the top of the alias,

also ive stopped it from pm'ing your own aliases to yourself.

tested in a fashion and it seems to work ok now.

any probs just let me know.

Link to comment
  • 2 weeks later...
hey guys how do i edit the cost of the maps like wen i type !buy in my server there isnt a cost for the map so how do i edit the costs of the map so ppl can buy maps

1) which script do u have to buy maps?

2) are you using prs?

answer me these and im sure i can help u better :)

Link to comment
im using ur script and the question wus how do i set prices on maps for ppl to buy

There is no command in PRS to buy maps, I never added it when i wrote PRS coz at the time i never really liked the idea.

Since then a few people have asked for it so i wrote a script to run alongside PRS.

Just paste this code into a "new" .mrc file and load it with the script editor.

/* 
///////////////////////////////////// 
//////      MTASA:RACE         ////// 
//////      Map Ownership      //////  
//////     BY: [uVA]Scooby     ////// 
///////////////////////////////////// 
  
Script to be used with PRS 1.3 (it wont work as it is without PRS!) 
this script pays $200 to the map owner every time the race starts, regardless if they are in the server. 
maps cost $250000 and can be sold for the same price. 
commands: !buymap - !sellmap - !owner - !mapsowned 
*/ 
  
on *:SIGNAL:mta.connect: { 
  set %mapprice 250000 
  set %bonuscount 0 
} 
  
on *:SIGNAL:mta.command: { 
  var %race = $replace($mta.race($1),$chr(32),$chr(63)), %owner = $hget(prsmaprate,owner $+ %race) 
  if ($3 == !owner) mta.text $1 $mta.race($1) - $iif(%owner == $null,Available For Purchase ($250000),Owned By: %owner) 
  elseif ($3 == !buymap) prs.buymap $1 $2 %race %owner 
  elseif ($3 == !sellmap) prs.sellmap $1 $2 %race %owner 
  elseif ($3 == !mapsowned) prs.mapsowned $1 $mta.nick($1,$2) 
} 
  
alias prs.buymap { 
  if ($hget(pgstemp,allow $+ $2) == no) mta.pm $1 $2 Plz Try Later - Accessing Details! 
  elseif ($pgs.cash($1,$2) < %mapprice) mta.pm $1 $2 Error: Not Enough Cash! ( $+ $ $+ %mapprice $+ ) 
  elseif ($4 != $null) mta.text $1 Map Already Owned By: $4 
  else { 
    mta.text $1 $mta.nick($1,$2) Is Buying This Map For $ $+ %mapprice 
    pgs.sub $mta.nick($1,$2) %mapprice 
    !hadd prsmaprate owner $+ $3 $mta.nick($1,$2) 
  } 
} 
  
alias prs.sellmap { 
  if ($hget(pgstemp,allow $+ $2) == no) mta.pm $1 $2 Plz Try Later - Accessing Details! 
  elseif ($4 != $mta.nick($1,$2)) mta.pm $1 $2 Error, You Dont Own This Map! 
  else { 
    mta.text $1 $mta.nick($1,$2) Is Selling This Map For $ $+ %mapprice 
    pgs.add $mta.nick($1,$2) %mapprice 
    !hdel prsmaprate owner $+ $3 
  } 
} 
  
alias prs.mapsowned { 
  var %a = 0,%b = 0, %c = $mta.races($1) 
  while (%a < %c) { 
    var %d = $replace($mta.races($1,%a),$chr(32),$chr(63)) 
    if ($hget(prsmaprate,owner $+ %d) == $2) { 
      !inc %b 
    } 
    !inc %a 
  } 
  mta.text $1 Total Maps Owned By $2 $+ : %b 
} 
  
on *:SIGNAL:mta.startrace: { 
  set %bounscount $calc(%bonuscount + 1) 
  if (%bounscount >= 10) prs.bonuswin $1 $2 
  var %race = $replace($mta.race($1),$chr(32),$chr(63)) 
  var %owner = $hget(prsmaprate,owner $+ %race) 
  if (%owner != $null) { 
    var %div = 200 
    .timer 1 10 mta.text $1 This Map Is Owned By: %owner - Paying Dividends. $ %div 
    pgs.add %owner %div 
  } 
  else .timer 1 10 mta.text $1 Buy This Map, Price:$ %mapprice (!buymap) 
} 
  
alias prs.bonuswin { 
  set %bonuscount 0 
  if ($prs.players($1) > 1) { 
    :scooby 
    var %nick = $mta.nick($1,$rand(0,$mta.server($1).cmax)) 
    if (%nick == $null) goto scooby 
    else { 
      mta.text $1 Bonus Win - Paying %nick $ $+ 1000. 
      pgs.add %nick 1000 
    } 
  } 
} 
  

This script will allow people to buy maps for the set price($250000), this can be set to whatever u want but only by editing the amount in the script under mta.connect.

Players can also sell the maps back, if they no longer want them or if theyre being removed.

Owners of maps receive $200 each time the map is played even if theyre not in the server(the whole point of buying one i guess).

And finally, after every 10 races, a random player in the server receives £1000 bonus for playing.

Commands: !buymap - !sellmap - !owner - !mapsowned

I hope this helps :)

Link to comment
I want that when somebody writes a special word e.g. "noob" that he is frozen or muted.

how can you make that? :D

there is already the banword function added, however as it stands it is set up for fining people.

eg:

player1 types: player you noob!!!

and 'noob' is a banned word,

player1 is then given a warning,

other players can then type !fine player1 and they will receive some of player1's money.

the idea being that after a while he will either be broke or not want to lose any more money that he stops.

PGS needs to be turned on for this to work as it stands.(using the dialog)

the function can easily be edited to temporarily freeze or mute players tho.

find this:

alias pgs.bannedwords { 
  var %a = 1,%b = $3-,%c = $lines(pgs.banwords.txt) 
  while (%a <= %c) { 
    if ($read(pgs.banwords.txt,%a) iswm %b) { 
      mta.pm $1 $2 Watch Your Language! 
      .timer 1 2 mta.pm $1 $2 $+(',$read(pgs.banwords.txt,%a),') Is A Banned Word! 
      !hadd pgstemp cuss $+ $2 $rand(100,1000) 
      .timercuss $+ $2 1 60 !hdel pgstemp cuss $+ $2 
    } 
    !inc %a 
  } 
} 

and change it to this:

alias pgs.bannedwords { 
  var %a = 1,%b = $3-,%c = $lines(pgs.banwords.txt) 
  while (%a <= %c) { 
    if ($read(pgs.banwords.txt,%a) iswm %b) { 
      mta.pm $1 $2 Watch Your Language! 
      .timer 1 2 mta.pm $1 $2 $+(',$read(pgs.banwords.txt,%a),') Is A Banned Word! 
      !hadd pgstemp cuss $+ $2 $rand(100,1000) 
      .timercuss $+ $2 1 60 !hdel pgstemp cuss $+ $2 
      mta.freeze $1 $2 
      .timerunfreeze 1 30 mta.unfreeze $1 $2 
    } 
    !inc %a 
  } 
} 

here you can see the two lines ive added, they will freeze the player and unfreeze after 30 seconds.

u can change it to 'mute' just by editing the words and it should be fine.

remember you will need to !banword before it will work.

if this is still no good please post again and i will try to help further.

Link to comment
  • 2 weeks later...

Hey guys.... i use a PRS-Edit for my server

(i just edit !brb, !lag, etc...)

but now i would like to have an !voteredo command. It should be like !votemap but you don´t have to type a map name... just !voteredo.

All have to type !voteredo and if the vote-limit is reached and all died the map starts again. :D

1. Question it´s possible? :compress:

2. Question anybody would like top create it for me? :cheers:

Link to comment

sure its possible,

ok, try this, find this line:

  elseif (!vote* iswm $3) prs.votekick $1- 

and above that line add this:

elseif ($3 == !voteredo) votemap $1 $2 $3 $mta.race($1) 

this should work the same ass !votemap

i havent tested it, so let me know if its what u want.

Link to comment
hey i will test it now ;)

btw i got a new question

if a admin types !kick it should be like

!kick sco afk

Scooby got kicked Reason: afk

i tried it

$iif(%a >= $prs.kick($1),!kick -)$iif($4, Reason: $4-)   

it´s right?

try something like this...

the whole thing should be:

    elseif ($3 == !kick) { 
      if ($prs.level($1,$2) >= $prs.kick($1)) { 
        if ($prs.level($1,$2) > $prs.level($1,%a)) { 
         mta.text $1 Kicking $mta.nick($1,%a) $iif($5 != $null,Reason: $5-) 
         .timer 1 5 mta.kick $1 %a 
        } 
        else insuf $1 $2 
      } 
      else insuf $1 $2 
    } 
  

Link to comment
  • Recently Browsing   0 members

    • No registered users viewing this page.

×
×
  • Create New...