Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2013-03-02, 20:38


kamiloo2







Wiek: 30
Na forum: 5694 dni
Posty: 84

Piwa: 289

Respekt: 50

Witajcie, chc? stworzy? pewien system dynamiczny a dok?adnie dynamiczny system text?w 3d zapisuj?cy do pliku ale nie wiem jak sie za to zabra?.

Najlepiej w systemie dini.

z gory dzieki za rady

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-02, 20:45


Quis

Wszechwiedzący






Wiek: 31
Na forum: 5146 dni
Posty: 464
Nick w MP: Quis

Piwa: 1110

Respekt: 325
Respekt: 325Respekt: 325Respekt: 325

Ale ?e niby co ma zapisywa?? 3D Texty? Chodzi o tekst, kolor pozycj??

Cytat:

Najlepiej w systemie dini.

Wcale ?e nie najlepiej, jest to stary system, powsta?y o wiele lepsze, szybsze.
Polecam te? korzysta? z poczciwego SQLite.

Pozdrawiam

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-02, 20:53


Combacior







Wiek: 29
Na forum: 5795 dni
Posty: 1516

Piwa: 2161

Respekt: 1060
Respekt: 1060

Ostrzeżeń: 20%
"Quis" napisał/a:

Wcale ?e nie najlepiej


Je?eli b?dzie to tylko dla jego w?asnych potrzeb, to mo?na na dini - lecz jak ka?dy gracz b?dzie m?g? tworzy?, to lepiej ju? MySQL lub SQLite, ew. DOF2 dla lubi?cych zabawy z zapisem na pliki.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-02, 21:04


kamiloo2







Wiek: 30
Na forum: 5694 dni
Posty: 84

Piwa: 289

Respekt: 50

Tylko dla mnie.
Chodzi mi o to ?e np w gamemodzie mam
Kod:

Create3DTextLabel("I'm at the coordinates:\n30.0, 40.0, 50.0", 0x008080FF, 30.0, 40.0, 50.0, 40.0, 0, 0);

i pozycje X Y Z bed? si? wczytywa?y z pliku np: text.ini

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-02, 21:42


Quis

Wszechwiedzący






Wiek: 31
Na forum: 5146 dni
Posty: 464
Nick w MP: Quis

Piwa: 1110

Respekt: 325
Respekt: 325Respekt: 325Respekt: 325

Do takiego czego? mo?na u?y? zwyk?ych wbudowanych funkcji file.
Funkcja "fread" czyta zawarto?? pliku linia po linii, wystarczy u?y? strfind ?eby wyszuka? znaki "(" i ")" i strmid ?eby wyci?? to co jest pomi?dzy. Potem wystarczy u?y? funkcji "sscanf" z pluginu, na pocz?tku dodaj?c "p<,>", z automatu ominie spacje i wczyta to co trzeba. Potem tylko z wczytanych danych tworzysz Text Labela.
Przyk?ad p?tli:
Kod:

new labelsFile = fopen("text.ini", io_read), str[128];
while(fread(labelsFile, str))

Pozdrawiam

@DOWN
?apaj piwko, bo si? napracowa?e? a ja si? tu wepchn??em.

Ostatnio zmieniony przez Quis 2013-03-02, 21:50, w całości zmieniany 1 raz  
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-02, 21:46


IgrexolonO







Wiek: 34
Na forum: 6809 dni
Posty: 1386

Piwa: 1062

Respekt: 651,8
Respekt: 651,8Respekt: 651,8

"kamiloo2" napisał/a:

Tylko dla mnie.
Chodzi mi o to ?e np w gamemodzie mam
Kod:

Create3DTextLabel("I'm at the coordinates:\n30.0, 40.0, 50.0", 0x008080FF, 30.0, 40.0, 50.0, 40.0, 0, 0);

i pozycje X Y Z bed? si? wczytywa?y z pliku np: text.ini


Tak. Wiemy o co Panu chodzi.

Przyk?adowy 'system'.

Kod:

#define MAX_LABELS 50

enum lInfo
{
id,
string,
Float:pos[3],
Float:dD
}; new labelInfo[MAX_LABELS][lInfo];

forward loadLabels();
public loadLabels()
{
new fileName[15];
for(new i=0; i<MAX_LABELS; i++)
{
format(fileName, sizeof(fileName), "labels/label%i.ini", i);
if(dini_Exists(fileName))
{
labelInfo[i][id] = i;
labelInfo[i][string] = dini_Get(file, "string");
labelInfo[i][pos][0] = dini_Float(file, "X");
labelInfo[i][pos][1] = dini_Float(file, "Y");
labelInfo[i][pos][2] = dini_Float(file, "Z");
labelInfo[i][dD] = dini_Float(file, "dD");
Create3DTextLabel(dini_Get(file, "string"), 0x008080FF, dini_Float(file, "X"), dini_Float(file, "Y"), dini_Float(file, "Z"), dini_Float(file, "dD"), -1, 1);
}
}
return 1;
}


Nigdy nic nie napisa?em w dini, no ale przezwyci??y?em strach i sklei?em Ci co? takiego. Nie wiem czy w pe?ni zadzia?a, gdy? pisa?em to "na kolanie". Co prawda jest to tylko zacz?tek - wczytywanie i tworzenie Text Labeli, ale to ju? jakie? 20% ca?ego systemu.

@UP: =) I wzajemnie. Dzi?ki.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-02, 21:54


Sax48

Saksofon.






Wiek: 29
Na forum: 4896 dni
Posty: 19

Piwa: 6

Respekt: 53

IgrexolonO, m?g?by? jeszcze napisa? zapisywanie ? :) Dam piwko ;)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-02, 21:56


IgrexolonO







Wiek: 34
Na forum: 6809 dni
Posty: 1386

Piwa: 1062

Respekt: 651,8
Respekt: 651,8Respekt: 651,8

"Sax48" napisał/a:

IgrexolonO, m?g?by? jeszcze napisa? zapisywanie ? :) Dam piwko ;)


Teraz id? na zw, ale mo?e i pokusz? si? o napisanie ca?ego systemu.

Kod:

CMD:alabel(playerid, params[]);
{
new string[50], Float:dD;
sscanf(params, "s[50]f", string, dD);

if(strlen(string) < 1) return SendClientMessage(playerid, 0, "Wpisuj nazwe guwna *** /alabel tekst floatwidoczno?ci");

new fileName[15];
for(new i=0; i<MAX_LABELS; i++)
{
format(fileName, sizeof(fileName), "labels/label%i.ini", i);
if(!dini_Exists(fileName))
{
dini_Create(fileName);
dini_Set(fileName, "string", string);
new Float:pos[3];
GetPlayerPos(playerid, pos[0], pos[1], pos[2]);
dini_Set(fileName, "X", pos[0]);
dini_Set(fileName, "Y", pos[1]);
dini_Set(fileName, "Z", pos[2]);
dini_Set(fileName, "dD", dD);

labelInfo[i][id] = i;
labelInfo[i][string] = string;
labelInfo[i][pos][0] = pos[0];
labelInfo[i][pos][1] = pos[1];
labelInfo[i][pos][2] = pos[2];
labelInfo[i][dD] = dD;

Create3DTextLabel(dini_Get(file, "string"), 0x008080FF, dini_Float(file, "X"), dini_Float(file, "Y"), dini_Float(file, "Z"), dini_Float(file, "dD"), -1, 1);
break;
}
}
return 1;
}


^ Nie wiem czy dzia?a. Nieskonwertowane, pisane na kolanie poraz drugi.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-02, 23:06


Sax48

Saksofon.






Wiek: 29
Na forum: 4896 dni
Posty: 19

Piwa: 6

Respekt: 53

IgrexolonO, M?g?by? to sklei? w ca?o?? ? :P

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-02, 23:08


IgrexolonO







Wiek: 34
Na forum: 6809 dni
Posty: 1386

Piwa: 1062

Respekt: 651,8
Respekt: 651,8Respekt: 651,8

"Sax48" napisał/a:

IgrexolonO, M?g?by? to sklei? w ca?o?? ? :P


Teraz u mnie na tapecie jest co? innego. Tak czy siak "sklejenie" tego w ca?o?? jest nie lada proste. Czego nie rozumiesz? Na pocz?tku masz definiowanie ca?o?ci + public od wczytywania Labeli. Umie?? wywo?ywanie funkcji (loadLabel();) do OnGameModeInit. Wtedy zostan? sprawdzone pliki z folderu ../labels/label(n).ini - przy czym zostan? wczytane Labele. M?j ostatni post to komenda, dzi?ki kt?rej mo?na stworzy? Label.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-02, 23:47


kamiloo2







Wiek: 30
Na forum: 5694 dni
Posty: 84

Piwa: 289

Respekt: 50

m?g?by? komend? zrobi? w sztandarowym systemie ?

z g?ry thx.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-02, 23:57


IgrexolonO







Wiek: 34
Na forum: 6809 dni
Posty: 1386

Piwa: 1062

Respekt: 651,8
Respekt: 651,8Respekt: 651,8

"kamiloo2" napisał/a:

Witajcie, chc? stworzy? pewien system dynamiczny a dok?adnie dynamiczny system text?w 3d zapisuj?cy do pliku ale nie wiem jak sie za to zabra?.

Najlepiej w systemie dini.

z gory dzieki za rady


To mia?y by? tylko rady - nie wiedzia?e? jak si? za to zabra?. Teraz to by?oby tylko wyr?czenie z brudnej roboty. Ju? dalej Ci nie pomog?. Musisz sobie poradzi? sam, albo z pomoc? innych u?ytkownik?w. =)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-03, 00:06


kamiloo2







Wiek: 30
Na forum: 5694 dni
Posty: 84

Piwa: 289

Respekt: 50

ok dzieki poradz? sobie, powiedz mi tylko jeszcze jaki format zapisu w pliku jest?
np:
X=0.0000
Y=0.0000
Z=0.0000
czy jak ?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-03-03, 00:08


IgrexolonO







Wiek: 34
Na forum: 6809 dni
Posty: 1386

Piwa: 1062

Respekt: 651,8
Respekt: 651,8Respekt: 651,8

Kod:

string=hitler
X=666.0
Y=666.0
Z=666.0
dD=69.0


Postaw piwo autorowi tego posta
 

 
Tagi: system :: dynamiczny :: jak :: sie :: zabrac
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » PAWN Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku