30.12.2012, 08:06
Hi all, I'm using Garsino House System, the last version. And I want to change that when player pickup up a dynamic pickup he teleport into the house. I want to make it happen with "enter" button onplayerkeystatechange:
This to turn into onplayerkeystatechange, when player press enter button.
Код:
public OnPlayerPickUpDynamicPickup(playerid, pickupid) { if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT) { new string[256], tmpstring[50]; foreach(Houses, h) { if(pickupid == HousePickupOut[h]) { SetPVarInt(playerid, "LastHouseCP", h); if(!strcmp(hInfo[h][HouseOwner], pNick(playerid), CASE_SENSETIVE)) { SetPlayerHouseInterior(playerid, h); ShowInfoBoxEx(playerid, COLOUR_INFO, I_HMENU); break; } format(tmpstring, sizeof(tmpstring), "HouseKeys_%d", h); if(GetPVarInt(playerid, tmpstring) == 1) { SetPlayerHouseInterior(playerid, h); break; } if(strcmp(hInfo[h][HouseOwner], pNick(playerid), CASE_SENSETIVE) && strcmp(hInfo[h][HouseOwner], INVALID_HOWNER_NAME, CASE_SENSETIVE)) { if(hInfo[h][HousePassword] == udb_hash("INVALID_HOUSE_PASSWORD")) { switch(hInfo[h][ForSale]) { case 0: ShowInfoBox(playerid, LABELTEXT2, hInfo[h][HouseOwner], hInfo[h][HouseValue], h); case 1: { switch(hInfo[h][HousePrivacy]) { case 0: ShowPlayerDialog(playerid, HOUSEMENU+23, DIALOG_STYLE_LIST, INFORMATION_HEADER, "Buy House (Step 1)\nBreak In", "Select", "Cancel"); case 1: ShowPlayerDialog(playerid, HOUSEMENU+23, DIALOG_STYLE_LIST, INFORMATION_HEADER, "Buy House (Step 1)\nBreak In\nEnter House", "Select", "Cancel"); } } } break; } } if(!strcmp(hInfo[h][HouseOwner], INVALID_HOWNER_NAME, CASE_SENSETIVE) && hInfo[h][HouseValue] > 0 && GetPVarInt(playerid, "JustCreatedHouse") == 0) { format(string, sizeof(string), HMENU_BUY_HOUSE, hInfo[h][HouseValue]); ShowPlayerDialog(playerid, HOUSEMENU+4, DIALOG_STYLE_MSGBOX, INFORMATION_HEADER, string, "Buy", "Cancel"); break; } } if(pickupid == HousePickupInt[h]) { switch(GetPVarInt(playerid, "HousePreview")) { case 0: ExitHouse(playerid, h); #if GH_HINTERIOR_UPGRADE == true case 1: { GetPVarString(playerid, "HousePrevName", tmpstring, 50); format(string, sizeof(string), HMENU_BUY_HINTERIOR, tmpstring, GetPVarInt(playerid, "HousePrevValue")); ShowPlayerDialog(playerid, HOUSEMENU+17, DIALOG_STYLE_MSGBOX, INFORMATION_HEADER, string, "Buy", "Cancel"); } #endif } break; } } } return 1; }