Jump to content

script SetPlayerHoldingObject pruvodce s dialogy


ffredyk

Recommended Posts

  • Majitel

Udelal sem si to pro sebe abych si nastavoval pozice objektu a pak si je ukladal..

 

 

OnPlayerCommandText:

dcmd(mho,3,cmdtext);

 

DCMD Command:

dcmd_mho(playerid,params[])
{
ShowPlayerDialog(playerid,1,1,"Object ID","Zadej cislo objektu! Nezadavej spatna cisla! Vzdy zkontroluj jestli mas validni objekt!","OK","Cancel");
return 1;
}

 

OnDialogResponse:

       if(response)
{
    switch(dialogid)
    {
        case 1:
        {
            mhoo[playerid] = strval(inputtext);
            ShowPlayerDialog(playerid,2,1,"Bone ID", "1 = Zada , 2 = hlava , 15 = Clavicle 1 , 16 = Clavicle 2 , 17 , 18","OK","Cancel");
		}
		case 2:
        {
            mhob[playerid] = strval(inputtext);
            ShowPlayerDialog(playerid,3,1,"Offset X", "Pozice objektu X","OK","Cancel");
		}
		case 3:
        {
            mhoX[playerid] = floatstr(inputtext);
            ShowPlayerDialog(playerid,4,1,"Offset Y", "Pozice objektu Y","OK","Cancel");
		}
		case 4:
        {
            mhoY[playerid] = floatstr(inputtext);
            ShowPlayerDialog(playerid,5,1,"Offset Z", "Pozice objektu Z","OK","Cancel");
		}
		case 5:
        {
            mhoZ[playerid] = floatstr(inputtext);
            SetPlayerHoldingObject(playerid,mhoo[playerid],mhob[playerid],mhoX[playerid],mhoY[playerid],mhoZ[playerid]);
            ShowPlayerDialog(playerid,6,1,"Rotate X","Rotace objektu X","OK","Cancel");
		}
		case 6:
        {
            mhoRX[playerid] = strval(inputtext);
            ShowPlayerDialog(playerid,7,1,"Rotate Y", "Rotace objektu Y","OK","Cancel");
		}
		case 7:
        {
            mhoRY[playerid] = floatstr(inputtext);
            ShowPlayerDialog(playerid,8,1,"Rotate Z", "Rotace objektu Z","OK","Cancel");
		}
		case 8:
		{
		    mhoRZ[playerid] = floatstr(inputtext);

		    SetPlayerHoldingObject(playerid,mhoo[playerid],mhob[playerid],mhoX[playerid],mhoY[playerid],mhoZ[playerid],mhoRX[playerid],mhoRY[playerid],mhoRZ[playerid]);

		    new str[80];

		    format(str,80,"%d , %d , %f , %f , %f , %f , %f , %f",mhoo[playerid],mhob[playerid],mhoX[playerid],mhoY[playerid],mhoZ[playerid],mhoRX[playerid],mhoRY[playerid],mhoRZ[playerid]);

		    SCM(playerid,B_GREY,str);
		}
	}
}

 

EDIT:

new mhoo[MAX_PLAYERS];
new mhob[MAX_PLAYERS];
new Float:mhoX[MAX_PLAYERS];
new Float:mhoY[MAX_PLAYERS];
new Float:mhoZ[MAX_PLAYERS];
new Float:mhoRX[MAX_PLAYERS];
new Float:mhoRY[MAX_PLAYERS];
new Float:mhoRZ[MAX_PLAYERS];

Link to comment
Share on other sites

  • Majitel

Vytvori objekt a do chatu napise souradnice tak jak jdou za sebou.. Byl sem linej se srat se zapisem do souboru xD ty souradky se ale daji vzit v chatlog.txt od ty dobyco ho samp uklada

Link to comment
Share on other sites

  • 8 months later...

Je to na 0.3c? :cry:

 

C:\Documents and Settings\PC\Plocha\Pohyb-Object.pwn(52) : error 017: undefined symbol "SetPlayerHoldingObject"
C:\Documents and Settings\PC\Plocha\Pohyb-Object.pwn(69) : error 017: undefined symbol "SetPlayerHoldingObject"

 

-- čtv 05. kvě 2011 19:35:52 --

 

mam to takto

 

#include 
#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1

new mhoo[MAX_PLAYERS];
new mhob[MAX_PLAYERS];
new Float:mhoX[MAX_PLAYERS];
new Float:mhoY[MAX_PLAYERS];
new Float:mhoZ[MAX_PLAYERS];
new Float:mhoRX[MAX_PLAYERS];
new Float:mhoRY[MAX_PLAYERS];
new Float:mhoRZ[MAX_PLAYERS];

public OnPlayerCommandText(playerid, cmdtext[])
{
dcmd(mho,3,cmdtext);
  return 1;
}
dcmd_mho(playerid,params[])
{
  ShowPlayerDialog(playerid,1,1,"Object ID","Zadej cislo objektu! Nezadavej spatna cisla! Vzdy zkontroluj jestli mas validni objekt!","OK","Cancel");
  return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
   if(response)
  {
      switch(dialogid)
      {
          case 1:
          {
              mhoo[playerid] = strval(inputtext);
              ShowPlayerDialog(playerid,2,1,"Bone ID", "1 = Zada , 2 = hlava , 15 = Clavicle 1 , 16 = Clavicle 2 , 17 , 18","OK","Cancel");
        }
        case 2:
          {
              mhob[playerid] = strval(inputtext);
              ShowPlayerDialog(playerid,3,1,"Offset X", "Pozice objektu X","OK","Cancel");
        }
        case 3:
          {
              mhoX[playerid] = floatstr(inputtext);
              ShowPlayerDialog(playerid,4,1,"Offset Y", "Pozice objektu Y","OK","Cancel");
        }
        case 4:
          {
              mhoY[playerid] = floatstr(inputtext);
              ShowPlayerDialog(playerid,5,1,"Offset Z", "Pozice objektu Z","OK","Cancel");
        }
        case 5:
          {
              mhoZ[playerid] = floatstr(inputtext);
              SetPlayerHoldingObject(playerid,mhoo[playerid],mhob[playerid],mhoX[playerid],mhoY[playerid],mhoZ[playerid]);
              ShowPlayerDialog(playerid,6,1,"Rotate X","Rotace objektu X","OK","Cancel");
        }
        case 6:
          {
              mhoRX[playerid] = strval(inputtext);
              ShowPlayerDialog(playerid,7,1,"Rotate Y", "Rotace objektu Y","OK","Cancel");
        }
        case 7:
          {
              mhoRY[playerid] = floatstr(inputtext);
              ShowPlayerDialog(playerid,8,1,"Rotate Z", "Rotace objektu Z","OK","Cancel");
        }
        case 8:
        {
            mhoRZ[playerid] = floatstr(inputtext);

            SetPlayerHoldingObject(playerid,mhoo[playerid],mhob[playerid],mhoX[playerid],mhoY[playerid],mhoZ[playerid],mhoRX[playerid],mhoRY[playerid],mhoRZ[playerid]);

            new str[80];

            format(str,80,"%d , %d , %f , %f , %f , %f , %f , %f",mhoo[playerid],mhob[playerid],mhoX[playerid],mhoY[playerid],mhoZ[playerid],mhoRX[playerid],mhoRY[playerid],mhoRZ[playerid]);

            SendClientMessage(playerid,B_GREY,str);
        }
     }
  }
return 1;
}

Link to comment
Share on other sites

Je to na 0.3c? :cry:

 

C:\Documents and Settings\PC\Plocha\Pohyb-Object.pwn(52) : error 017: undefined symbol "SetPlayerHoldingObject"
C:\Documents and Settings\PC\Plocha\Pohyb-Object.pwn(69) : error 017: undefined symbol "SetPlayerHoldingObject"

 

-- čtv 05. kvě 2011 19:35:52 --

 

mam to takto

 

#include 
#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1

new mhoo[MAX_PLAYERS];
new mhob[MAX_PLAYERS];
new Float:mhoX[MAX_PLAYERS];
new Float:mhoY[MAX_PLAYERS];
new Float:mhoZ[MAX_PLAYERS];
new Float:mhoRX[MAX_PLAYERS];
new Float:mhoRY[MAX_PLAYERS];
new Float:mhoRZ[MAX_PLAYERS];

public OnPlayerCommandText(playerid, cmdtext[])
{
dcmd(mho,3,cmdtext);
  return 1;
}
dcmd_mho(playerid,params[])
{
  ShowPlayerDialog(playerid,1,1,"Object ID","Zadej cislo objektu! Nezadavej spatna cisla! Vzdy zkontroluj jestli mas validni objekt!","OK","Cancel");
  return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
   if(response)
  {
      switch(dialogid)
      {
          case 1:
          {
              mhoo[playerid] = strval(inputtext);
              ShowPlayerDialog(playerid,2,1,"Bone ID", "1 = Zada , 2 = hlava , 15 = Clavicle 1 , 16 = Clavicle 2 , 17 , 18","OK","Cancel");
        }
        case 2:
          {
              mhob[playerid] = strval(inputtext);
              ShowPlayerDialog(playerid,3,1,"Offset X", "Pozice objektu X","OK","Cancel");
        }
        case 3:
          {
              mhoX[playerid] = floatstr(inputtext);
              ShowPlayerDialog(playerid,4,1,"Offset Y", "Pozice objektu Y","OK","Cancel");
        }
        case 4:
          {
              mhoY[playerid] = floatstr(inputtext);
              ShowPlayerDialog(playerid,5,1,"Offset Z", "Pozice objektu Z","OK","Cancel");
        }
        case 5:
          {
              mhoZ[playerid] = floatstr(inputtext);
              SetPlayerHoldingObject(playerid,mhoo[playerid],mhob[playerid],mhoX[playerid],mhoY[playerid],mhoZ[playerid]);
              ShowPlayerDialog(playerid,6,1,"Rotate X","Rotace objektu X","OK","Cancel");
        }
        case 6:
          {
              mhoRX[playerid] = strval(inputtext);
              ShowPlayerDialog(playerid,7,1,"Rotate Y", "Rotace objektu Y","OK","Cancel");
        }
        case 7:
          {
              mhoRY[playerid] = floatstr(inputtext);
              ShowPlayerDialog(playerid,8,1,"Rotate Z", "Rotace objektu Z","OK","Cancel");
        }
        case 8:
        {
            mhoRZ[playerid] = floatstr(inputtext);

            SetPlayerHoldingObject(playerid,mhoo[playerid],mhob[playerid],mhoX[playerid],mhoY[playerid],mhoZ[playerid],mhoRX[playerid],mhoRY[playerid],mhoRZ[playerid]);

            new str[80];

            format(str,80,"%d , %d , %f , %f , %f , %f , %f , %f",mhoo[playerid],mhob[playerid],mhoX[playerid],mhoY[playerid],mhoZ[playerid],mhoRX[playerid],mhoRY[playerid],mhoRZ[playerid]);

            SendClientMessage(playerid,B_GREY,str);
        }
     }
  }
return 1;
}

 

a) Otevíráš starý topic

 

B) Myslím že ne, protože 0.3c vycházel někdy v prosinci 2010 a tendle topic je ze srpna, takže tipuju na 0.3b

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...