View Single Post
  #13  
Old 02-12-2010, 11:13 AM
scriptless scriptless is offline
Banned
Join Date: Dec 2008
Location: N-Pulse
Posts: 1,412
scriptless is a splendid one to beholdscriptless is a splendid one to beholdscriptless is a splendid one to beholdscriptless is a splendid one to behold
Must say, very impressed. Tho size doesn't show for other players, so I came up with this. Maybe you could impliment something to show size properly in your next rescript?

PHP Code:
function onActionServerside() {
  if ( 
params[0] == "size" ) {
    
clientr.movementSpeed .5;
    
clientr.movementSize 2;
  }
  if ( 
params[0] == "getsize" ) {
    
temp.var = findplayerbycommunityname(params[1]).clientr.movementSize;
    
triggerClient("gui"this.name"gotsize"params[1], temp.var);
  }
}
//#CLIENTSIDE
function onCreated() {
  
player.int(player.x)+.5;
  
player.int(player.y);
  
triggerserver"gui"this.name"size"null );
  
setTimer(0.05);
}

function 
onActionClientSide() {
  if ( 
params[0] == "gotsize" ) {
    
findplayerbycommunityname(params[1]).zoom params[2]/2;
  }
}

function 
onTimeout() {
  
temp.speed clientr.movementSpeed;
  
temp.size clientr.movementSize;
  
triggerserver"gui"this.name"getsize" );
  for( 
temp.pl allplayers ) {
    
triggerserver"gui"this.name"getsize"pl.communityname );
  }
  
player.zoom temp.size/2;
  for (
temp.k=0;k<4;k++) {
    if (
keydown(k)) {
      
player.dir k;

      
temp.cx = (player.x+.5)-((size 2)/2);
      
temp.cy = (player.y+1)-((size 2)/2);

      
temp.horizontalwall onwall2(cx vecx(k)*speed,cy,size-1/16,size-1/16);
      
temp.verticalwall onwall2(cx,cy vecy(k)*speed,size-1/16,size-1/16);

      if (
horizontalwall == 0player.+= vecx(k)*speed;
      else {
        for (
i=0;i<(speed client.size speed size);i+=1/16) {
          if (
onwall2(cx+vecx(k)*i,cy,size-1/16,size-1/16)) {
            
player.+= vecx(k)*i;
            
player.int(playerx+((size%== 1)*.5))+((size%== 0)*.5);
            break;
          }
        }
      }
      if (
verticalwall == 0player.+= vecy(k)*speed;
      else {
        for (
i=0;i<(speed size speed size);i+=1/16) {
          if (
onwall2(cx,cy+vecy(k)*i,size-1/16,size-1/16)) {
            
player.+= vecy(k)*i;
            
player.int(playery+((size%== 0)*.5))+((size%== 1)*.5);
            break;
          }
        }
      }
    }
  }
  
setTimer(0.05);

Would love to see some updates/addons to this
Reply With Quote