14.08.2017, 16:31
Olб eu nгo sei como fazer para guardar alйm dos itens (que da pra guardar), fazer para guardar e descartar armas no inventбrio.
FUNЗГO QUE DESCARTA OS ITENS
FUNЗГO QUE MOSTRA AS ARMAS E OS ITENS NO CHГO
stock DA LISTA DE ITENS DO INVENTБRIO E TEM ali uma linha que diz, se for arma
//if(idx >= 331 && idx < 372) format( nomedoitem, 50, GunNames(idx)); // se for arma
COMANDO QUE PEGA AS ARMAS, JA TA PRONTINHO
FUNЗГO QUE DESCARTA OS ITENS
Код:
if(playertextid == invText[playerid][14]) { new str[180]; if(InventarioInfo[playerid][ItemSelecionado[playerid]][iSlot] == 19382){ SendClientMessage(playerid, 0xFF6347AA, "* Nгo hб itens suficientes para ser descartado!"); for(new i = 7; i < 16; i++){ PlayerTextDrawHide(playerid, invText[playerid][i]); } BoxAberto[playerid] = 0; return 1; } format(str, 280, "* Vocк largou um item: %s, com %d unidade(s)", NomeItemInv(InventarioInfo[playerid][ItemSelecionado[playerid]][iSlot]), InventarioInfo[playerid][ItemSelecionado[playerid]][iUnidades]); SendClientMessage(playerid, 0x00ccccFF, str); new Float:pos[3];//cria uma array para armazenar a posiзгo X, Y e Z do jogador GetPlayerPos(playerid, pos[0], pos[1], pos[2]);//armazena na variбvel pos a posiзгo do jogador CreateDroppedItem(InventarioInfo[playerid][ItemSelecionado[playerid]][iSlot], InventarioInfo[playerid][ItemSelecionado[playerid]][iUnidades], pos[0], pos[1], pos[2] - 0.9); for(new i = 0; i != 16; i++) { PlayerTextDrawHide(playerid, invText[playerid][i]); } for(new i; i != 75; i++) { PlayerTextDrawHide(playerid, invPreview[playerid][i]); PlayerTextDrawHide(playerid, invName[playerid][i]); } BoxAberto[playerid] = 0; InventarioInfo[playerid][ItemSelecionado[playerid]][iSlot] = 19382; InventarioInfo[playerid][ItemSelecionado[playerid]][iUnidades] = 0; AbrirInventario(playerid); }
Код:
for(new a = 0; a < MAX_OBJ; a++) { if(IsPlayerInRangeOfPoint(i, 1.8, dGunData[a][ObjPos][0], dGunData[a][ObjPos][1], dGunData[a][ObjPos][2]) && dGunData[a][ObjPos][0] != 0) { new Str[73]; format(Str, sizeof Str, "Uma %s com %d balas", GunNames[dGunData[a][ObjData][0]], dGunData[a][ObjData][1]); PlayerTextDrawSetString(i, DropTextdraw5[i], Str); TextDrawShowForPlayer(i, DropTextdraw0); TextDrawShowForPlayer(i, DropTextdraw1); TextDrawShowForPlayer(i, DropTextdraw2); TextDrawShowForPlayer(i, DropTextdraw3); TextDrawShowForPlayer(i, DropTextdraw4); PlayerTextDrawShow(i, DropTextdraw5[i]); break; } if(IsPlayerInRangeOfPoint(i, 1.8, dItemData[a][ObjtPos][0], dItemData[a][ObjtPos][1], dItemData[a][ObjtPos][2]) && dItemData[a][ObjtPos][0] != 0) { new Str[73]; format(Str, sizeof Str, "%s com %d unidade(s)", NomeItemInv(dItemData[a][ObjtData][0]), dItemData[a][ObjtData][1]); PlayerTextDrawSetString(i, DropTextdraw5[i], Str); TextDrawShowForPlayer(i, DropTextdraw0); TextDrawShowForPlayer(i, DropTextdraw1); TextDrawShowForPlayer(i, DropTextdraw2); TextDrawShowForPlayer(i, DropTextdraw3); TextDrawShowForPlayer(i, DropTextdraw4); PlayerTextDrawShow(i, DropTextdraw5[i]); break; } }
//if(idx >= 331 && idx < 372) format( nomedoitem, 50, GunNames(idx)); // se for arma
Код:
stock NomeItemInv(idx) { new nomedoitem[100]; //format( nomedoitem, 100, "Desconhecido"); //if(idx >= 331 && idx < 372) format( nomedoitem, 50, GunNames(idx)); // se for arma //if(idx == 0) format( nomedoitem, 50, "Desconhecido"); if(idx == 19941) format( nomedoitem, 50, "Respeito"); if(idx == 1212) format( nomedoitem, 50, "Dinheiro"); if(idx == 1650) format( nomedoitem, 50, "Gasolina"); if(idx == 2226) format( nomedoitem, 50, "Radio Portatil"); if(idx == 18976) format( nomedoitem, 50, "Capacete"); if(idx == 980) format( nomedoitem, 50, "Portao"); if(idx == 11738) format( nomedoitem, 50, "Remedio pequeno"); if(idx == 11739) format( nomedoitem, 50, "Remedio Normal"); if(idx == 11736) format( nomedoitem, 50, "MedKit"); if(idx == 1271) format( nomedoitem, 50, "Caixa de Itens"); if(idx == 19570) format( nomedoitem, 50, "Garrafa d'Agua"); if(idx == 1581) format( nomedoitem, 50, "Titulo Personalizado"); if(idx == 2881) format( nomedoitem, 50, "Pizza"); if(idx == 2768) format( nomedoitem, 50, "Hamburguer"); if(idx == 19562) format( nomedoitem, 50, "Cereal"); if(idx == 19054) format( nomedoitem, 50, "Caixa Supresa Pequena"); if(idx == 19055) format( nomedoitem, 50, "Caixa Supresa Media"); if(idx == 19056) format( nomedoitem, 50, "Caixa Supresa Grande"); if(idx == 19057) format( nomedoitem, 50, "Caixa Supresa Platina"); if(idx == 370) format( nomedoitem, 50, "JetPack"); if(idx == 1609) format( nomedoitem, 50, "Tartaruga"); //itens if(idx == 19317) format( nomedoitem, 50, "Guitarra"); if(idx == 19319) format( nomedoitem, 50, "Guitarra"); if(idx == 19094) format( nomedoitem, 50, "Item Raro"); if(idx == 18974) format( nomedoitem, 50, "Item Raro"); if(idx == 19142) format( nomedoitem, 50, "Colete"); if(idx == 19555) format( nomedoitem, 50, "Luva esquerda"); if(idx == 19556) format( nomedoitem, 50, "Luva direita"); if(idx == 1736) format( nomedoitem, 50, "Cabeca de touro"); if(idx == 2052) format( nomedoitem, 50, "CJ Tommy Hat"); if(idx == 2053) format( nomedoitem, 50, "CJ Jerry Hat"); if(idx == 2114) format( nomedoitem, 50, "Bola de Basquete"); if(idx == 6865) format( nomedoitem, 50, "Cabeзa de cervo"); if(idx == 3528) format( nomedoitem, 50, "Cabeca de dragao"); if(idx == 1262) format( nomedoitem, 50, "Cabeca de semaforo"); if(idx == 19067) format( nomedoitem, 50, "Bandana gangster"); if(idx == 19136) format( nomedoitem, 50, "Oculos e cabelo"); if(idx == 19320) format( nomedoitem, 50, "Cabeca de abobora"); if(idx == 19348) format( nomedoitem, 50, "Bengala"); if(idx == 19042) format( nomedoitem, 50, "Relogio de ouro"); if(idx == 19528) format( nomedoitem, 50, "Chapeu de bruxa"); if(idx == 19527) format( nomedoitem, 50, "Caldeirao"); if(idx == 19557) format( nomedoitem, 50, "Mascara Stripp"); if(idx == 11704) format( nomedoitem, 50, "Mascara DEMON"); if(idx == 954) format( nomedoitem, 50, "Ferradura"); if(idx == 1247) format( nomedoitem, 50, "Estrela"); if(idx == 1274) format( nomedoitem, 50, "Sifrao"); if(idx == 2918) format( nomedoitem, 50, "Bola aquatica"); if(idx == 19121) format( nomedoitem, 50, "Luz Branca"); if(idx == 19122) format( nomedoitem, 50, "Luz Azul"); if(idx == 19123) format( nomedoitem, 50, "Luz Verde"); if(idx == 19124) format( nomedoitem, 50, "Luz Vermelha"); if(idx == 19125) format( nomedoitem, 50, "Luz Amarela"); if(idx == 19126) format( nomedoitem, 50, "Luz Azul Bebe"); if(idx == 19127) format( nomedoitem, 50, "Luz Roxa"); if(idx == 2894) format( nomedoitem, 50, "Contrato Hospitalar"); if(idx == 19382) format( nomedoitem, 50, "Nenhum Item"); if(idx >= 0 && idx < 312 ) format( nomedoitem, 50, "Skin %d",idx); // se for skin //if(idx > 399 && idx < 612 ) format( nomedoitem, 50, "%s",VehicleNames[idx - 400]); // se for veiculo return nomedoitem; }
Код:
CMD:parma(playerid) { if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return 1; new f = MAX_OBJ+1; for(new a = 0; a < MAX_OBJ; a++) { if(IsPlayerInRangeOfPoint(playerid, 1.8, dGunData[a][ObjPos][0], dGunData[a][ObjPos][1], dGunData[a][ObjPos][2])) { f = a; break; } } if(f > MAX_OBJ) return 1; if(gettime() < GetPVarInt(playerid, #VarFlood8)) return 1; SetPVarInt(playerid, #VarFlood8, gettime()+2); GivePlayerWeapon(playerid, dGunData[f][ObjData][0], dGunData[f][ObjData][1]); DestroyDroppedObject(f); ApplyAnimation(playerid,"BOMBER","BOM_Plant_2Idle",4.1,0,1,1,0,0); new buffer[85]; format(buffer, sizeof(buffer), "Vocк pegou um(a) %s.", GunNames[dGunData[f][ObjData][0]]); SendClientMessage(playerid, 0x33AA3300, buffer); format(buffer, sizeof(buffer), "*%s pegou um(a) %s do chгo.", NomePlayer(playerid), GunNames[dGunData[f][ObjData][0]]); SendClientMessageInRange(30.0, playerid, buffer, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE); printf("%s", buffer); return 1; }
Код:
stock CreateDroppedGun(GunID, GunAmmo, Float:gPosX, Float:gPosY, Float:gPosZ) { new f = MAX_OBJ+1; for(new a = 0; a < MAX_OBJ; a++) { if(dGunData[a][ObjPos][0] == 0.0) { f = a; break; } } if(f > MAX_OBJ) return; dGunData[f][dropTimer] = gettime() + (30*60);//30 minutos para a arma desaparecer dGunData[f][ObjData][0] = GunID; dGunData[f][ObjData][1] = GunAmmo; dGunData[f][ObjPos][0] = gPosX; dGunData[f][ObjPos][1] = gPosY; dGunData[f][ObjPos][2] = gPosZ; dGunData[f][ObjID] = CreateDynamicObject(GunObjects[GunID], dGunData[f][ObjPos][0], dGunData[f][ObjPos][1], dGunData[f][ObjPos][2]-1, 93.7, 120.0, random(360), -1, -1, -1, 80.0); new buffer[128]; format(buffer, sizeof buffer, "%s",GunNames[dGunData[f][ObjData][0]]); dGunData[f][text3d] = CreateDynamic3DTextLabel(buffer, 0xAAAAAAAA, dGunData[f][ObjPos][0], dGunData[f][ObjPos][1], dGunData[f][ObjPos][2]-1, 15.0, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 0, -1, -1, -1, 80.0); return; }