Quote:
Originally Posted by sssssssssss
having a problem setting the area when the player dies.
|
Your code only sets out one player, unless they both die. If you look at what I was trying to do, it's pretty obvious that I wanted to warp out both players if one dies. it doesnt matter who wins in this code, they both need to be warped out once one dies.
So, I guess i could use what you did, and put the timer, and check for sparring, and then go through and look for the hearts, but, in a spar, the only people that should be dying are the people sparring, and checking for a tie, winner 1, or winner 2, and all that is a bit redundant compared to just using a serverside function onPlayerDies() to check the level for any player that dies, then warp them both back, eh?
First code in 4 years btw, not first code.
Anywho, changed it a bit, no results. Im trying to set it where when it starts the match, it finds the players by comm name, then sets a this.array to hold it in, so that way, if the playerdies, it can check if any account in the level is in that array, then warp them out of the spar. This is what i have thus far.
PHP Code:
function onCreated() {
this.setshape(1, 32, 32);
}
function onActionWarpPlayer(pobj)
{
temp.player1 = pobj[0];
temp.player2 = pobj[1];
temp.pl1 = findplayerbycommunityname(player1);
temp.pl2 = findplayerbycommunityname(player2);
temp.dest = {"testtourny.nw", 20, 20};
pl1.setlevel2(dest[0], dest[1], dest[2]);
pl2.setlevel2(dest[0], dest[1], dest[2]);
this.playerbattle = {pl1, pl2};
player.chat = this.playerbattle;
}
function onActionWarpPlayert(){
temp.desta = {"testtourny.nw", 40, 40};
player.setlevel2(desta[0], desta[1], desta[2]);
}
function onActionSetMatchServer(match, vplayer, splayer) {
for (temp.i = 0; temp.i <= 10; temp.i++) {
if (match == i) makevar("this.sdematch" @ i) = {vplayer, splayer};
}
}
function onPlayerTouchsMe(){
temp.matchlist = "";
for (temp.i = 1; temp.i <= 10; temp.i ++)
{
matchlist @= "Match " @ i @ ": " @ this.(@"sdematch" @ i)[0] @ " vs. " @ this.(@"sdematch" @ i)[1] @ "#b";
}
say2(matchlist);
}
function onPlayerChats(){
if (player.account in serverr.sdeaccess)
{
if (player.chat.starts("setmatch")) {
temp.match = player.chat.tokenize()[1];
temp.vplayer = player.chat.tokenize()[2];
temp.splayer = player.chat.tokenize()[3];
triggeraction(this.x + 0.5, this.y + 0.5, "SetMatchServer", temp.match, temp.vplayer,temp.splayer);
}
if (player.chat.starts("startmatches")){
for (temp.i = 1; temp.i <= 10; temp.i++) {
this.whatmatch = {this.(@"sdematch" @ i)};
if (this.whatmatch == 0){
this.whatmatch ++;
}else{
triggeraction(this.x + 0.5, this.y + 0.5, "WarpPlayer", this.whatmatch);
}
}
}
}
}
//#CLIENTSIDE
function onPlayerDies(){
if (player.account in this.playerbattle)
{
triggeraction(this.x + 0.5, this.y + 0.5, "WarpPlayert", "");
}
}