0 Members and 1 Guest are viewing this topic.
Question here. Can you setup amount of max/min wires? It would be nice if that possibility was there.
const maxnum = 16; // maximum playerID possible on server, set it higher than number of slots (suggested: slots + 2) penalty = 5; // how many points (kills) is taken from the player who survives explosion bombtimermin = 15; // minimum possible bomb timer bombtimermax = 30; // max wiremin = 3; // minimum number of wires sticking out of the bomb wiremax = 5; // max
Only admins can start the procedure?
function onplayercommand(id: byte; text: string): boolean; var whichtocut, target, timer: byte; begin if lowercase(copy(text, 1, 5)) = '/bomb' then if id <> 255 then begin if length(text) <= 6 then target := randomplayer(id) // if player can't decide then (randomly) make someone happy else target := strtoint(getpiece(text, ' ', 1)); if getplayerstat(target, 'active') = false then begin writeconsole(id, 'No such player.', cbad); exit; end; if bombtimer[target] > 0 then begin // if target is already happy then don't put a new bomb on him writeconsole(id, idtoname(target) + ' has a bomb on him already...', cmid); exit; end; timer := xrandom(minimumtimer, maximumtimer); plantbomb(target, timer); // harrr. terrorist[target] := id; // terrorist - player who planted a bomb on someone writeconsole(id, inttostr(timer) + '-second bomb planted on ' + idtoname(target) + '!', cgood); end; if lowercase(getpiece(text, ' ', 0)) = '/cut' then begin if bombtimer[id] < 0 then exit else begin try whichtocut := strtoint(getpiece(text, ' ', 1)); except writeconsole(id, 'This is not a number. Use /cut 1-' + inttostr(wirenum[id]) + ', i.e. /cut 1', cmid); exit; end; if (whichtocut >= 1) and (whichtocut <= wirenum[id]) then begin writeconsole(terrorist[id], idtoname(id) + ' is cutting wire no. ' + inttostr(whichtocut) + '...', cmid); defuse(id, whichtocut); end else writeconsole(id, 'Wrong wire number. Remaining wires: [ ' + remainingwires(id) + ']', cmid); end; end; result := false; end;