Wysłany: 2014-10-24, 09:12
kazami
Pawner/PTG
Wiek: 27 Na forum: 4596 dni Posty: 405
Nick w MP: adi888
Piwa : 43
Witam od kilku dni g?owi? si? jak zrobi? system prywatnych dom?w , nw wog?l? jak zacz?? przegl?da?em inne skrpty ale nie s? zbyt czytelne dla mnie ;/.
Nw jak zacz??.
Hm my?la?em tak :
Kod:
enum DaneDomow
{
Float:Pos[3],
hnazwa,
dikons,
dpickup
}
Komenda
Kod:
CMD:stworzdom(playerid, params[])
{
if(dane[playerid][ranga] >= 5)
{
new id = strval(params);
new dcena = strval(params);
new housename[100];
if(sscanf(params, "dds[100]", id,dcena,housename))
{
SendClientMessage(playerid, Pomaranczowy, "Uzyj: /stworzdom [id domu] [cena] [nazwa]");
}
else
{
new msg[200];
format(msg, 200, "Nazwa: %s\nID: %d\nCena: %d$", housename, id, dcena);
new Float:pos[3];
GetPlayerPos(playerid, pos[0], pos[1], pos[2]);
CreateDynamic3DTextLabel(msg, Niebieski, pos[0], pos[1], pos[2], 10.0);
dom[dpickup] = CreateDynamicPickup(1273, 1, pos[0], pos[1], pos[2]);
dom[dikons] = CreateDynamicMapIcon(pos[0], pos[1], pos[2], 31, -1, -1, -1, -1);
dom[Pos][0] = pos[0];
dom[Pos][1] = pos[1];
dom[Pos][2] = pos[2];
}
}
else return SendClientMessage(playerid, Czerwony, "{00C3FF}Serwer: {FF0000}Nie masz dotepu do tej komendy !");
return 1;
}
w onplayerkeys dalem takie cos
Kod:
if(IsPlayerInRangeOfPoint(playerid, 2.0, dom[Pos][0], dom[Pos][1], dom[Pos][2]))
{
SendClientMessage(playerid, Czerwony, "jestes w domu");
}
else
{
SendClientMessage(playerid, Czerwony, "Nie jestes przy domie !");
}
i gdy stworz? dwa domy to komunikat "jestes w domu" po kliknieciu pojawia sie tylko przy pickupie ktory zostal stworzony jako ostatni.
Wysłany: 2014-10-26, 01:03
ToxiC.
Wiek: 28 Na forum: 5246 dni Posty: 3792
Piwa : 8590
Musisz okre?li? ilo?c dom?w, i z tego b?dziesz mia? ID. Co? jak maxplayers;/ sory pozno nie pokaze kodu elo
Wysłany: 2014-10-26, 07:42
kazami
Pawner/PTG
Wiek: 27 Na forum: 4596 dni Posty: 405
Nick w MP: adi888
Piwa : 43
Kod:
enum DaneDomow
{
did,
Float:x,
Float:y,
Float:z,
hnazwa,
dikons,
dpickup
}
new dom[20][DaneDomow];
Kod:
CMD:stworzdom(playerid, params[])
{
if(dane[playerid][ranga] >= 5)
{
new id = strval(params);
new dcena = strval(params);
new housename[100];
if(sscanf(params, "dds[100]", id,dcena,housename))
{
SendClientMessage(playerid, Pomaranczowy, "Uzyj: /stworzdom [id domu] [cena] [nazwa]");
}
else
{
new msg[200];
format(msg, 200, "Nazwa: %s\nID: %d\nCena: %d$", housename, id, dcena);
new Float:pos[3];
GetPlayerPos(playerid, pos[0], pos[1], pos[2]);
CreateDynamic3DTextLabel(msg, Niebieski, pos[0], pos[1], pos[2], 10.0);
dom[did][dpickup] = CreateDynamicPickup(1273, 1, pos[0], pos[1], pos[2]);
dom[did][dikons] = CreateDynamicMapIcon(pos[0], pos[1], pos[2], 31, -1, -1, -1, -1);
dom[did][x] += pos[0];
dom[did][y] += pos[1];
dom[did][z] += pos[2];
}
}
else return SendClientMessage(playerid, Czerwony, "{00C3FF}Serwer: {FF0000}Nie masz dotepu do tej komendy !");
return 1;
}
Kod: Current directory: C:\Users\Adam\Desktop\Serwer Samp\gamemodes
GM.pwn(716) : warning 213: tag mismatch
GM.pwn(716) : warning 213: tag mismatch
GM.pwn(716) : warning 213: tag mismatch
GM.pwn(5588) : warning 213: tag mismatch
GM.pwn(5589) : warning 213: tag mismatch
GM.pwn(5590) : warning 213: tag mismatch
GM.pwn(5591) : warning 213: tag mismatch
GM.pwn(5592) : warning 213: tag mismatch
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
8 Warnings.
================ READY ================
Hmm nw ;/
Wysłany: 2014-10-26, 21:41
ToxiC.
Wiek: 28 Na forum: 5246 dni Posty: 3792
Piwa : 8590
raczej did zamie? na id.. xd
[ Dodano : 2014-10-26, 21:42 ]
Po za tym tak b?dzie Ci ci??ko. Nalepiej zapisuj domki jako numer a reszta w pliku i to b?dzie id, z pewno?ci? lepiej b?dzie Ci odczytywa? to i w og?le.
Wysłany: 2014-10-27, 14:46
kazami
Pawner/PTG
Wiek: 27 Na forum: 4596 dni Posty: 405
Nick w MP: adi888
Piwa : 43
did na id nie mog? zmieni? bo w innym enumie mam id jak zmieni?em mai?em errory.
No okey mam te domki jak numer zapisywac ale gdzie przechowywa? te kordynaty wej?? gdy je stworz? ?
Tagi: system :: prywatnych :: domów
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: