Pokaż wiadomości

Ta sekcja pozwala Ci zobaczyć wszystkie wiadomości wysłane przez tego użytkownika. Zwróć uwagę, że możesz widzieć tylko wiadomości wysłane w działach do których masz aktualnie dostęp.


Wiadomości - Tasilvar

Strony: [1] 2 3 ... 14
1
MDS i animacje / [Blender] KrxImpExp na blenderze 2.9
« dnia: 2021-06-08, 16:49 »
Jeśli chodzi o blendera 2.9 to raczej trzebaby przepisać skrypty w pythonie pod nowszą wersję aby współgrały. U mnie problem występuje natomiast z wersją 2.79. Wrzuciłem plugin kerraxa z wersji 2.66 do 2.79 - sam plugin został odneleziony jednak pracuję na OS X i tam architektura ścieżek jest inna niż w przypadku windowsa. Początkowo miałem problem aby w ustawieniach uzyskać oko do dodania ścieżki do tekstur, gdy udało mi się je ustawić (modyfikując plik kerraxa) podczas próby importu uzyskuję komunikat (widoczny na screenie). Załączam też plik image_search.py . Generalnie jeśli ktoś miałby zmodyfikowany plugin kerraxa pod linuxa/OS X i miałby ochotę się nim podzielić to chętnie przyjmę.




# image_search.py: provides the "load_image" function which can search an image file using some directory list.
# This file also provides GUI to setup the list of the texture directories.
#-------------------------------------------------------------------------------------------------------
# This file is a part of the KrxImpExp package.
# Author: Vitaly Baranov
# License: GPL
#-------------------------------------------------------------------------------------------------------


# Import the required modules
import bpy
from bpy.props import *
import os


#--------------------------------------------------------------------------------------------------------------------------------
# Global variables and the "load_image" function
#--------------------------------------------------------------------------------------------------------------------------------
 
class TextureDirectory(bpy.types.PropertyGroup):
pass

bpy.utils.register_class(TextureDirectory)

bpy.types.Scene.texture_directories = CollectionProperty( name = "Texture directories", type = TextureDirectory, description= "" )
bpy.types.Scene.selected_texture_directory = IntProperty( name= "Selected texture directory", default = -1, min = -1)

# Load image with searching in directories specified by the "paths" global variable
def load_image(filename):
if filename == "":
return None

found = False
filepath = filename
if os.path.exists(filepath):
found = True
else:
sce = bpy.context.scene
texdirs = sce.texture_directories
if(len(texdirs) == 0):
load_paths()
for texdir in texdirs:
filepath = texdir.name + filename.lstrip("\\/")
if os.path.exists(filepath):
found = True
break

if found:
im = bpy.data.images.load(filepath)
else:
im = bpy.data.images.new(filename, 4, 4)
im.source = "FILE"
im.filepath = filename
return im



#--------------------------------------------------------------------------------------------------------------------------------
# Operations on texture directories
#--------------------------------------------------------------------------------------------------------------------------------

# Function: Adds a path
def add_path(path):
# nothing to do it the path is empty
if(path == ""):
return

# remove filename from the selected path
path2 = path
if(path2[-1] != os.sep and path2[-1] != os.altsep):
i = max(path2.rfind(os.sep), path2.rfind(os.altsep))
if(i != -1):
path2 = path2[:i+1]

# append the new path to the list if the list doesn't contain it yet
sce = bpy.context.scene
texdirs = sce.texture_directories
if(texdirs.get(path2) == None):
newindex = len(texdirs)
texdirs.add()
texdirs[newindex].name = path2
sce.selected_texture_directory = newindex

# Function: Adds a path with its subpaths
def add_path_with_subpaths(path):
# nothing to do it the path is empty
if(path == ""):
return

# remove filename from the selected path
path2 = path
if(path2[-1] != os.sep and path2[-1] != os.altsep):
i = max(path2.rfind(os.sep), path2.rfind(os.altsep))
if(i != -1):
path2 = path2[:i+1]

# append the new dirpath to the list if the list doesn't contain it yet
sce = bpy.context.scene
texdirs = sce.texture_directories
for root, dirs, files in os.walk(path2):
subpath = root.rstrip(os.sep + os.altsep) + os.sep
if(texdirs.get(subpath) == None):
add_path(subpath)

# Function: Moves a path upward (exchange a specified path with the previous one)
def move_path_up(index):
sce = bpy.context.scene
texdirs = sce.texture_directories
if sce.selected_texture_directory >= 1:
texdirs.move(sce.selected_texture_directory - 1, sce.selected_texture_directory)
sce.selected_texture_directory -= 1

# Function: Moves a path downward (exchange a specified path with the next one)
def move_path_down(index):
sce = bpy.context.scene
texdirs = sce.texture_directories
if sce.selected_texture_directory >= 0 and sce.selected_texture_directory <= len(texdirs) - 2:
texdirs.move(sce.selected_texture_directory, sce.selected_texture_directory + 1)
sce.selected_texture_directory += 1

# Function: Removes a path by index (0...num-1)
def remove_path(index):
sce = bpy.context.scene
texdirs = sce.texture_directories
texdirs.remove(index)
if(sce.selected_texture_directory >= len(texdirs)):
sce.selected_texture_directory = len(texdirs) - 1

# Function: Removes all the paths
def remove_all_paths():
sce = bpy.context.scene
texdirs = sce.texture_directories
while(len(texdirs) > 0):
texdirs.remove(0)
if sce.selected_texture_directory != -1:
sce.selected_texture_directory = -1

#  Function: Gets path to configuration file
def get_config_filepath():
altsep = os.altsep if os.altsep != None else ""
return bpy.utils.user_resource("CONFIG").rstrip(os.sep + altsep) + os.sep + "TextureDirs.cfg"

# Function: Saves paths to configuration file
def save_paths():
cfgfilepath = get_config_filepath()
cfgfile = None
try:
cfgfile = open(cfgfilepath, "wt")
sce = bpy.context.scene
texdirs = sce.texture_directories
for texdir in texdirs:
cfgfile.write(texdir.name)
cfgfile.write("\n")
except:
pass
finally:
if(cfgfile != None):
cfgfile.close()

# Function: Loads paths to configuration file
def load_paths():
remove_all_paths()
cfgfilepath = get_config_filepath()
cfgfile = None
try:
cfgfile = open(cfgfilepath, "rt")
for line in cfgfile:
if(line[-1] == "\n"):
line = line[:-1]
add_path(line)
except:
pass
finally:
if(cfgfile != None):
cfgfile.close()




#--------------------------------------------------------------------------------------------------------------------------------
# GUI
#--------------------------------------------------------------------------------------------------------------------------------

# Button "Add a path"
class TEXDIRS_OT_add_path(bpy.types.Operator):
bl_idname      = 'texdirs.add_path'
bl_label       = "Select path"

# This property is used by the file browser
filepath = StringProperty(name = "File Path")

def invoke(self, context, event):
wm = bpy.context.window_manager
# show the file browser
wm.fileselect_add(self)
return {'RUNNING_MODAL'}

def execute(self, context):
add_path(self.filepath)
save_paths()
return {'FINISHED'}

# Button "Add path with subpaths"
class TEXDIRS_OT_add_path_with_subpaths(bpy.types.Operator):
bl_idname      = 'texdirs.add_path_with_subpaths'
bl_label       = "Select path"

# This property is used by the file browser
filepath = StringProperty(name = "File Path")

def invoke(self, context, event):
wm = bpy.context.window_manager
# show the file browser
wm.fileselect_add(self)
return {'RUNNING_MODAL'}

def execute(self, context):
add_path_with_subpaths(self.filepath)
save_paths()
return {'FINISHED'}

# Button "Move up"
class TEXDIRS_OT_move_up(bpy.types.Operator):
bl_idname      = 'texdirs.move_up'
bl_label       = "Move up"
 
def invoke(self, context, event):
sce = bpy.context.scene
move_path_up(sce.selected_texture_directory)
save_paths()
return{'FINISHED'}

# Button "Move down"
class TEXDIRS_OT_move_down(bpy.types.Operator):
bl_idname      = 'texdirs.move_down'
bl_label       = "Move down"
 
def invoke(self, context, event):
sce = bpy.context.scene
move_path_down(sce.selected_texture_directory)
save_paths()
return{'FINISHED'}

# Button "Remove path"
class TEXDIRS_OT_remove_path(bpy.types.Operator):
bl_idname      = 'texdirs.remove_path'
bl_label       = "Remove path"
 
def invoke(self, context, event):
sce = bpy.context.scene
remove_path(sce.selected_texture_directory)
save_paths()
return{'FINISHED'}
 
# Button "Remove all"
class TEXDIRS_OT_remove_all_paths(bpy.types.Operator):
bl_idname      = 'texdirs.remove_all_paths'
bl_label       = "Remove all paths"

def invoke(self, context, event):
remove_all_paths()
save_paths()
return{'FINISHED'}
 
class TEXDIRS_UI_list_slot(bpy.types.UIList):
def draw_item(self, context, layout, data, item, icon, active_data, active_propname, index):
layout.label(text=item.name)

# A new panel in the user preferences
class TextureDirectoriesPanel(bpy.types.Panel):
bl_space_type  = 'USER_PREFERENCES'
bl_region_type = 'WINDOW'
bl_label = "List of texture directories (used by the KrxImpExp scripts)"

def __init__(self):
sce = bpy.context.scene
texdirs = sce.texture_directories
if(len(texdirs) == 0):
load_paths()

def draw(self, context):
layout= self.layout
sce = bpy.context.scene
texdirs = sce.texture_directories

row0 = layout.row()
row0.template_list('TEXDIRS_UI_list_slot', '', sce, 'texture_directories', sce, 'selected_texture_directory', rows = 5, maxrows = 7)
col = row0.column(align=True)
col.scale_x = 0.35
col.operator('texdirs.add_path', text="Add path")
col.operator('texdirs.add_path_with_subpaths', text="Add path with subpaths")
col.operator('texdirs.move_up', text="Move up")
col.operator('texdirs.move_down', text="Move down")
col.operator('texdirs.remove_path', text="Remove path")
col.operator('texdirs.remove_all_paths', text="Remove all paths")
row1 = layout.row()

t = "Total: " + str(len(texdirs))
index = sce.selected_texture_directory
if(0 <= index and index < len(texdirs)):
t += "             "
t += "Selected: " + str(index+1)
t += "   "
t += "'" + texdirs[index].name + "'"
row1.label(text = t)

def register():
bpy.utils.register_class(TextureDirectoriesPanel)
bpy.utils.register_class(TEXDIRS_UI_list_slot)
bpy.utils.register_class(TEXDIRS_OT_add_path)
bpy.utils.register_class(TEXDIRS_OT_add_path_with_subpaths)
bpy.utils.register_class(TEXDIRS_OT_move_up)
bpy.utils.register_class(TEXDIRS_OT_move_down)
bpy.utils.register_class(TEXDIRS_OT_remove_path)
bpy.utils.register_class(TEXDIRS_OT_remove_all_paths)

def unregister():
bpy.utils.unregister_class(TextureDirectoriesPanel)
bpy.utils.unregister_class(TEXDIRS_UI_list_slot)
bpy.utils.unregister_class(TEXDIRS_OT_add_path)
bpy.utils.unregister_class(TEXDIRS_OT_add_path_with_subpaths)
bpy.utils.unregister_class(TEXDIRS_OT_move_up)
bpy.utils.unregister_class(TEXDIRS_OT_move_down)
bpy.utils.unregister_class(TEXDIRS_OT_remove_path)
bpy.utils.unregister_class(TEXDIRS_OT_remove_all_paths)

if __name__ == "__main__":
register()


2
Witam,
Chciałem odświeżyć sobie wieśka, jednak od ponad roku czasu moim jedynym systemem w domu jest linux. W gry dosyć rzadko gram, jednak chciałem sobie odświeżyć kilka starych kolekcji. Zainstalowałem wine1.7 oraz podgrałem do niego biblioteki directx uruchamiając wiedźmina za każdym razem mam czarny ekran. Żadnego błędu, ani nic. Proces sam w sobie ciągle aktywny do momentu przerwania przeze mnie. Nie mogłem doszukać się w sieci przyczyny błędu oraz ew. próby jego rozwiązania. Inne gry chodzą mi normalnie, po odpowiedniej konfiguracji wine.

Jeśli ktoś z użytkowników ubuntu jest w temacie proszę pisać.
Pozdr.

3
Webmastering / [Ajax] Dynamiczne zliczanie obiektów
« dnia: 2014-02-02, 23:08 »
Witam. Od jakiegoś czasu tworząc spontanicznie wtyczkę zmieniającą design facebooka natknąłem się na problem pobierania obiektów które w sposób dynamiczny są dodawane na portalu tj. nowe kometarze, wpisy etc.  po to aby móc zmienić im wygląd.

Normalnie, aby po przeładowaniu dokumentu podmieniam atrybuty klasy, dając pętelkę do zmiennej zbierającej obiekty za pomocą document.getElementsByClass(); Tutaj jednak konieczne jest raczej wdrożenie techniki ajax. Pytanie z mojej strony w jaki sposób mógłbym dynamicznie zliczyć obiekty w chwili uzyskania State==4 && status==200 o danej klasie i podmienić im styl ?

4
Oceny / World Of Angels - Nowa gra online
« dnia: 2013-12-01, 13:32 »
Design lepszy od poprzednika, jednak logo tj. napis "world of angels" do poprawy. Typografia moim zdaniem też - times new roman jakoś mi tu nie pasuje. Środkowy panel zrobiłbym szerszy - ogólnie zrobiłbym panel z atrybutem  display:block; gdzie byłyby screeny i pod spodem kolejny blok z trailerem/gameplayem który w jakiś sposób przybliżyłby potencjalnemu guestowi - o czym to w ogóle jest. Rejestracja nie potrzebnie od razu "rozwalona" na głównej. Lepszym zabiegiem byłby button z rejestracją i po kliknięciu event z pojawieniem się "kontenera" z formem do rejestracji tj.
$(this).toggle();  //  lub
$(this).css('display','block');
w sumie to chyba tyle. Ogólnie co do samej gry to czekam na innowacje tj. czym się ma różnić ta gra na tle innych podobnych w klimatach fantasy dostępnych na przeglądarkę, w jaki sposób ma ona przyciągnąć graczy - co takiego w niej ma być wciągającego? historia ? postaci ? system gry? . Bo to jest właśnie kluczem do sukcesu.

5
HTML i CSS / Ukrywanie przycisku przy użyciu CSS
« dnia: 2013-10-19, 17:42 »
nie wiem co to za cms, ale prawdopodobnie wystarczy usunąć z kodu skina moduł mailingu

6
HTML i CSS / Ukrywanie przycisku przy użyciu CSS
« dnia: 2013-10-19, 17:21 »
jest to button graficzny czy pole input ? jeśli input to go odpowiednio przefiltruj tj.  
.post input[name=mail] i nie powinno być problemu z zastosowaniem polecenia
display:none; Mam nadzieję że pomogłem.

7
Hm, stary nie wiem po co dawałeś w poleceniu mysql_connet w funkcji or die() funkcję print. Weź daj po prostu
mysql_connect($polaczenie) or die ('Problem polaczenia z baza danych');
no i powinno na lajcie działać.
Resztę kodu przyznam że nie sprawdzałem (tylko co to mi się rzuciło w oczy).

8
Archiwum / Gothic: Czas Zapłaty [beta]
« dnia: 2012-04-06, 23:49 »
Co do poważniejszych crashów uniemożliwiających kontynuację fabuły - w momencie kiedy musimy przyjść następnego dnia do Ratforda który ma porozmawiać nt. Katrakanata w momencie wybicia północy crashuje (tak jak wcześniej w przypadku Patcho) do pulpitu.

9
Webmastering / jQuery | problem z instalacją
« dnia: 2011-10-17, 14:52 »
Witam, przyszło mi w koncepcji strony wyposażenie jej w dynamiczne efekty wizualne. Poczytałem trochę tutoriali o bibliotece jquery, jednak już na wstępie problem pojawił się z jej instalacją. Ściągnąłem akutualna wersje jQuery i odpowiednio umieściłem ja w katalogu a następnie wywoalelem ja w indexie i zeby sprawdzic przywowoalem wywoałem alerta.

$("document").ready(
function() {
alert("test jquery");
}
);

Nie rozumiem co mogłem tu pominąć. Po refreshu strony alert nie zostaje wywołany. W razie potrzeby mogę zarzucić cały index, chociaz nie wiem czy bedzie to konieczne.

10
HTML i CSS / Szerokość strony [HTML]
« dnia: 2011-09-24, 11:04 »
Nie prościej <element width="800">...</element> ? Po co chłopakowi mieszać w głowie stylami? ;)

Niby tak, ale zawsze to później łatwiej modyfikować wygląd strony poprzez css niż pojedyńczo każdy z plików html.

11
Skrypty / Potwory z gothic II w gothic I
« dnia: 2011-06-19, 21:06 »
Z błędu wynika stąd że w tym katalogu nie znaleziono pliku/ścieżki. Wystarczy że gomanem wyeksportujesz plik .msb do katalogu anims i powinno być  :ok:   W każdym razie zarzuciłem ci już zdekompilowany plik dragon.msb i dragon_rock.msb .


http://www21.zippyshare.com/v/78159288/file.html

12
Skrypty / Potwory z gothic II w gothic I
« dnia: 2011-06-19, 19:21 »
Problem w tym że nie moge dekompilować nie pojawia się ten plik po dekompilacji.
Możliwe że podałeś nieprawidłową ścieżkę przy dekompilacji.

13
Skrypty / Potwory z gothic II w gothic I
« dnia: 2011-06-19, 18:53 »
Chciałbym umieścić potwory z gothic II w gothic jeden a konkretnie smoka.I tu moje pytanie jakie pliki trzeba skopiować do gothic I by to działało.Widziałem na forum że były podobne tematy , ale nie znalazłem w nich oczekiwanej odpowiedzi i do tego gothic sourcer jak chce dekompilować mds z gothic 2 albo pokazuje error albo nic nie wypakowuje.

W gothic 2 dekompilujesz pliki .msb . Kiedy je zdekomplujesz wrzucasz zawartość do folderu anims w G1 a następnie piszesz skrypt opierając go w sekcji visuals o mds#msg152472a i  .asc wyglądu ciała potwora.

14
Bitwy 3D / Ankieta 7a - Kusze i łuki
« dnia: 2011-06-19, 17:26 »
Głos na Jedaitha. Co prawda tło pod render mogłoby być nieco inne, ale tekstury stoją jak dla mnie na najwyższym poziomie.

15
Narzędzia / Gothic Pasek Skrótów
« dnia: 2011-06-18, 13:12 »
Cytuj
Kurde, nie mam NET4.  
to łaphttp://www.dobreprogramy.pl/NET-Framework,Program,Windows,17632.html

co myślicie o nowym motywie



będzie dostępny od następnej wersji

a nie dałoby rady żeby program sprawdzał czy użytkownik ma net framework i w razie jego braku automatycznie pobierał i instalował ?

16
Spacer / Spacer - zCItem Vob - problem [G1]
« dnia: 2011-05-31, 16:21 »
Po godzinach ślęczenia nad nieskompilowanym zenie wreszcie działa! Skorzystałem z tego pierwszego wyjścia, jako że po głębszej analizie funkcja makros służy jedynie do łączenia zenów w całość (w ten sposób otrzymałbym oryginalną wersję świata) to zapisałem świat jako uncompiled. Po 6 godzinach pracy nad jakimiś 400 tysiącami linijek udało się ;) Wszystkie przedmioty działają poprawnie i w skompilowanym już zenie obiekty te są widzialne. Przyczyna tak jak się domyślałem leżała w zapisywaniu świata. Otóż spacer pomiął zapisywanie przedmiotów i stąd zostały one "pominięte".
Tak reasumując, dzięki RafalBudzis za naprowadzenie mnie na właściwy trop ;)

edit. temat do zamknięcia;)

17
Spacer / Spacer - zCItem Vob - problem [G1]
« dnia: 2011-05-29, 17:53 »
Przywoływałem, przez konsolę wszystkie itemy wyrzucane są poprawnie. Tak więc to musi być coś z zenem.

18
Spacer / Spacer - zCItem Vob - problem [G1]
« dnia: 2011-05-29, 14:46 »
Hm, tzn. w spacerze nie repasowałem skryptów (ale w najbliższym czasie to zrobie). Dziwne jest jednak to że w oryginalnych częściach .zen np. surface przedmioty widoczne. Mi się wydaje że problem ten pojawił się podczas zapisywania zena, część itmów została zapisana a część nie i stąd tam gdzie one powinny być pojawia się "no name, no instance". Pytanie tylko jak wrzucić instance itmów do niewidzialnych w spacerze obiektów.

19
Spacer / Spacer - zCItem Vob - problem [G1]
« dnia: 2011-05-27, 23:18 »
Witam, od jakiegoś czasu mam dosyć nietypowy problem w spacerze związany z listą przedmiotów. Wszystkie przemioty z oryginalnego Gothica w spacerze są niewidoczne, natomiast w grze część działa prawidłowo, natomiast reszta po próbie "zebrania" przedmiotu minimalizuje nam grę i wyrzuca komunikat:
Cytuj
M: Invalid item (no name, no instance)
put into intentroy. Deleting it.

Więcej szczegółów przedstawiłem na poniższym filmie:
[media]
https://www.youtube.com/watch?v=gOVeijOAHjY
[/media]

Tak więc, czekam na wasze sugestie. :ok:

20
Skrypty / Problem z zwracaniem zmiennych
« dnia: 2011-05-22, 11:48 »
Po co coś takiego? Nie lepiej po prostu:
?

użyłem i niestety nie działało, jedynie kiedy przypisze im zmienne globalne

no właśnie zmieniasz wartość zmiennym globalnym
a broni ich w ogóle nie zmieniasz o to właśnie chodzi

a i takie dodatkowe pytanie co rozumiesz przez zwracanie zmiennych bo ja przez to rozumiem używanie instrukcji return ;d

sęk w tym że po wykonaniu funkcji nie ma zmian (w tym przypadku wzrostu obrażeń czy wartości).
Cały problem tkwi w tym że powyższy kod który podałem w pierszym poście działa tylko kiedy tę samą broń która nosi hero przywołam kodem. Tylko w tym przypadku widać efekt ulepszenia broni.

edit. Chyba mam pomysł na rozwiązanie problemu, sęk w tym że nie wiem w jakis sposób pobrać do zmiennej instance przedmiotu który aktualnie nosi hero.

edit.2 Udało się! wystarczyło stworzyć jeszcze 3 zmienne które będą pobierały odpowiednio instance dowolnych pancerzy, łuków i kusz oraz broni. Imo dzięki za wskazówki ;) temat w sumie do zakmnięcia .

Strony: [1] 2 3 ... 14
Do góry