İçeriğin rss beslemesi kullanımda değil Soru - Cevap Bölümü

Kullanıcıya Ait Cevapları Göster: Mehmet KARACA(89)

« ilk « 1  2 3 4 »  son »

Soru: flash as3 component yapımı

adres MotionCoder profilini göster
Mehmet KARACA 29.07.2008 02:06:13
En iyi cevap mı ?

merhaba

Veli Süngütay freelance çalıstıgım için tasarım ve kodlama sürecini yanlız gerçekleştiriyorum

MVC modeline ve CodeIgniter’e imrenip ihtiyaç analizi yaptıgım da

Model üretmek de sıkıntım yok AMFPHP ile sadece model e odaklanarak kodlama imkanı buluyorum Dreamviewr de kodlayıp testlerimi AMFPHP nin basit bir Flex arayuzu var orada test ediyorum

View de şu asagıda ki agaç modeli ile parçaladıgım da odaklanma problemini aşmış oldum


1 = layout
         1-1 = index
 2 = Modules
         2-1 = header
                2-1-1 = img  resimdosyaları vss.. 
                2-1-2 = header Compiled
         2-2 = footer
         2-3 = ürünlist
         2-4 = duyurular_list
         2-5 = mail form
         2-6 = vs..   projede ayıra bildigim ne varsa ..
 3 = pages
         3-1 = anasayfa
         3-2 = hakkımızda
         3-3 = urunler
         3-4 = iletişim
         3-4 = error
         3-5 = vs...

bu agaç yapısına göre her sayfa , modul , layout , uretim aşamasın da kullandıkları metaryelleri kendi yanın da bulundurdukların (modul>header>img de olcak) da kafam karısmıyor view katmanını da bu sekilde çıkardık her aşama ya ayrı ayrı adaklana bilme umudu ile

Controller model ve viev i layout kısmında buluşturuyorum Controller yapısı page_Load() pageLoadcomplate() page_unLoad() pageunloadcomplate() belki atraksiyonlu geçişlere imkan tanıyan daha esnek biryapı olabilir en basiti bu

layOut da manual olarak yada Projenin durumuna göre dinamik olarak pages ve modules leri alıyorum ve Controller ile gerektigi zaman ekrana getiriorum ve AMFPHP ile modullere sadece gerekli datayı set etmek istiyorum

bu şekilde Model View Controller i farklı kişiler yada farklı zamanda farklı dugular da aynı kişi rahat kodlaya bilecek yada ŞAHSİ SORUNUM odaklana bilicek

Code Igniter ile bu çatıyı oluşturdum html php çalışırken çok haz alıyorum bir bölümle urasırken diger bölümü düşünmüyorum

aynı mantık flash içinde uyguladım gibi ama layout aşamasına kullanmak üzere modules aşamasın da oluşan kısmın sadece Compiled i lazım ken library de birsütü MovieClip bitmap ların ın beni cıldırmasını istemiyorum.

çatı ihtiyacım için olusturdugum analizim bu sekilde farklı bir IDE yada Haxe beraberin de arge sürecide getiricek buda uygun zaman === bütce demek şuan imkansız

yani bitmiş projeye 3 ay sonra baktıgım da proje çatısı işin detaylarını bana vermeli tek bir fla da bogus madan yada fla içinde modul kodları aramak la urasmamalıyım vs..

ve tekrar kullanıla bilirlilik maxsimum olmalı aynı uygulamayı her iste yapmak yoruyor artık istedigim modulun animasyonu ve görüntüsü degiştrip rekrar kullana bilmeliyim

offf of

kolaygelsin..<<

Soru: flash as3 component yapımı

adres MotionCoder profilini göster
Mehmet KARACA 29.07.2008 09:54:33
En iyi cevap mı ?

merhaba

Flash cs3 As3 kullanıyorum şuan flash ortamı için kullandıgım bir MVC çatısı yok yıkarıdaki çatıyı swfAddres , amfphp den faydalanarak kurmaya çalısıyorum

dinamik php işler de CodeIgniter kullanıyorum zaten MVC sevdam bunla basladı

PureMVC nin dokümanları pek okunaklı degil

GAIA nın kaynak dökümanları daha okunaklı ama örnek video yu izledikten sonra sayfa geçişlerin de katı kuralları var sanıyorum ama incelemeye devam ediyorum

sayfa geçileri organizasyonu için kafam da şöle bir çözüm var

pagesHistory = new Array();
pagesHistory.push( "/defaultPage/" );

bir array dizinin de swf adres den bana gelen tüm sayfaları depoluyorum tüm link ler swfadresi tetikliyor swfaddress de tüm gelen istekleri array da topluyor

pagesHistory.push( e.value );

e.value swfaddres in vana verdigi sayfa link i oluyor

bende çagıracagım sayfayı

pagesHistory[ pagesHistory.lengh-1 ];

ile

ekrandan kaldıracagım sayfaı

pagesHistory[ pagesHistory.lengh-2 ];

ile buluyorum

defauld sayfam ise

pagesHistory[ pagesHistory[0] ];

busekilde harici swf yada aynı dosya içindeki sayfaları kontrol etmeyi planlıyorum papervision yada tweener geçişli sayfalara olanak saglaması gerekiyor sayfalar arası geçişler de loader ekleme yada eklememe özgürlügü. sayfa yüklü ise tekrar yükleme kontrolleri gibi bu b eklentiler dorultusun da bir çatı olusturmaya çalısıyorum

şuan AMFPHP , AWFAddress , Tweener kullanıyorum

verdiginiz cevaplar için çok tesekkürler..

Soru: AS2 de video yada fotograf üzerine tam ekran olarak pattern eklemek?

adres MotionCoder profilini göster
Mehmet KARACA 29.07.2008 13:16:27
En iyi cevap mı ?
Faydalı cevap

merhaba yukarıdaki kodları incelemedim ancak daha önce bir işimde kullanmak için ayzdıgım bir Class var istersen bir inceleyip kullana bilirsin

öncelik bu class ı Buplish panelin den Package de gosterilen hierarşi de sayfana ekle


package MotionCoder.display{
    import flash.events.EventDispatcher;
    import flash.events.Event;

    import flash.display.MovieClip;
    import flash.display.Loader;
    import flash.net.URLRequest;
    import flash.display.BitmapData;        

    public class background_img extends EventDispatcher {
        // event
        public var RESIZE:String = "resize";

        // background
        public var target_container:MovieClip;
        public var bg_img_container:MovieClip = new MovieClip();
        public var bg_img_data:BitmapData= null;


        public function background_img( target , img_data ){
            this.target_container   = target;
            this.bg_img_data        = img_data;

            // event handler
            this.target_container.stage.addEventListener(Event.RESIZE, this.doRESIZE );         


            this.init();
        }

        public function init(){
            this.target_container.addChild( this.bg_img_container );
            this.target_container.setChildIndex( this.bg_img_container , this.target_container.numChildren-1 )

            this.draw( this.target_container.stage.stageWidth , this.target_container.stage.stageHeight );
        }

        public function draw( w:Number , h:Number ){
            this.bg_img_container.graphics.clear();
            this.bg_img_container.graphics.beginBitmapFill( this.bg_img_data );
            this.bg_img_container.graphics.drawRect(0, 0, w , h );
            this.bg_img_container.graphics.endFill();
        }






        // DO event ###########################################################
        public function doRESIZE( e:Event = null):void {
            dispatchEvent(new Event(this.RESIZE));
        }       
    }
}

biraz uzun gübü görüle bilir ama olduk ca kullanıslı dosyamıza class ı ekledigimize göre artık kullana biliriz

kütüp hanene bir patter al ve sag tıklayıp linkage den class kısmına "bgpatternimg" ismini ver kodlar:


stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;

import MotionCoder.display.background_img;

var bg:background_img = new background_img( this , new bg_pattern_img(0,0) );

bg.addEventListener( bg.RESIZE , ciz );

function ciz(e:Event):void {
    bg.draw( stage.stageWidth , stage.stageHeight );
}

işleyiş: var bg:backgroundimg = new backgroundimg( this , new bgpatternimg(0,0) ); bgpatternimg isimli resim i kütüp haneden al this seviyesine bu herhangir bir MovieClip ismide olabilir ekle artık patter imiz belirrtigimiz yerse oluştur swf dosyamız resize olduun da pattern imiz tekrar şekillen mesi için bir de event ekliyoruz bg.addEventListener( bg.RESIZE , ciz ); artık ciz fonction u ile pattern i istedigimiz boyutta tekrar çize biliyoruz bu opsiyonu class içine otamatik larak da alabilirsin ben ölçüleri farklı kullanırım diye ayırdım

kolaygelsin..<<

Ekli Dosyalar

Dosyalara ulaşabilmek için, üye iseniz giriş yapın, değilseniz üye olun.

  • addiveresizepattern.swf

Soru: flash as3 component yapımı

adres MotionCoder profilini göster
Mehmet KARACA 29.07.2008 23:46:50
En iyi cevap mı ?

merhaba

ali kıran çok tesekkür ler Gaia yı tekibe aldım fırsat bulukca inceliyorum. bu arada compiler clip üretmeyi basardım daha önce neden basaramadıgım da bilmiyorum tek satır kod yazmıstım hatanın koddan olması mümkün degil di ama simdi çalısıyor çok enteresan eskiden yaptıgım bir pattern uygulamasını Compiler ettim canavar gibi çalısıyor :D

tekrar çok tesekkürler bu baslık benim için çok faydalı oldu

kolaygelsin..<<

Ekli Dosyalar

Dosyalara ulaşabilmek için, üye iseniz giriş yapın, değilseniz üye olun.

  • mcpattern.fla
  • mcpattern.swf
  • componentornegi.fla

Soru: flash as3 component yapımı

adres MotionCoder profilini göster
Mehmet KARACA 30.07.2008 14:20:38
En iyi cevap mı ?

işte onları bi bilsem yapıcam

sahne genişleme kodunu resize olayını class içine katmamamın sebebi örnegin bir scroll bar yapıyorum ve scroll buton un sürüklendigi kısım da bir doku pattern gerekli işte burda stageResize bana engel istedigim zaman resize ederim diye dışarı aldım

aslında dün vaktım yoktu

set_pattern( path , BitmapData , AotoResize ) AotoResize yi boolean deger lendirip compiler içine alıcaktım

şuan ki tecrubemle projeyi moduller halinde sıkıstırmaktı amacım uygun olan yöntemi gösterirseniz hemen gecebilirim

peki modul bittiginde harici class dosyaları compiler clip içinde derlenip kalıcak daha sonra class dosyalarını baska uygulamalar için taşımayacagım dimi ?

ve SWC dosyaları hakkında hiç kaynak bulamadım sizin bilginiz varmı?

kolaygelsin..<<

Soru: Dinamik oluşturulan Spritelarda startDrag sorunu.

adres MotionCoder profilini göster
Mehmet KARACA 03.08.2008 10:30:42
En iyi cevap mı ?

merhaba

dinamik Spriteleri ni oluştururken her siprite ye bir name verim name lerin den ulasmak istemissin

hatayı alma sebebin String veriye startDrag uygulaman olmus

bu şekilde kullanıcaksan tıkla function unun içinde ulaştıgın ismi nesneye çevirmen gerek bunun için 2 yöntem var

1. yöntem

var sp = getChildByName(evt.target.name) as Sprite
sp.startDrag();

2. yöntem

var sp = Sprite( getChildByName(evt.target.name)  )
sp.startDrag();

ama nesnenin ismi ile ulaşman çok önemli degil se 3. yöntem daha basit

evt.target.startDrag();

kolaygelsin..<<

Soru: Dinamik oluşturulan Spritelarda startDrag sorunu.

adres MotionCoder profilini göster
Mehmet KARACA 03.08.2008 12:16:15
En iyi cevap mı ?

merhaba soruyu cevaplarken kaynagına yöneltmek istemistim nitekim öle oldu

ilk 2 örnek String veriden objeye erişmemizi saglıyor yani bir for döngüsünden aldıgımız sıralı numaraları "mc_"+i gibi String birleştirip objelere erişmemizi saglar

3. örnek ise objenin mutlak yolunu kullanarak erişiyor

konu ile alakalı örnek kullanımlar aşagıdaki link de acıklanmış http://enginyoyen.com/blog/tr/index.php/actionscript-3-ve-display-list/

kolaygelsin..<<

Soru: as3 dinamic class import

adres MotionCoder profilini göster
Mehmet KARACA 03.08.2008 13:35:51
En iyi cevap mı ?

biraz daha açıcak olursam

proje nin tüm sayfalarında kullanacagım class ları

import controllers.*;

şeklinde projeme dahil ettim

trace( anasayfa ) //[class anasayfa] şeklinde ulasabiliyorum

ama adres satırından aldıgım bilgi ile"http://www.example.com/classname/functionname" ile class larımı kullanmak istiyorum

:S:S:S:S

Soru: as3 dinamic class import

adres MotionCoder profilini göster
Mehmet KARACA 03.08.2008 18:19:39
En iyi cevap mı ?

ne yaptım ettim her yolu denedim çalıştıramadım sabahtan belli bu sorunla urasıyorum ekteki dosyaya bir bakarmısın lütfen bugun bunu çalıstırmam lazım :S

çoook tesekkürler kolaygelsin..<<

Ekli Dosyalar

Dosyalara ulaşabilmek için, üye iseniz giriş yapın, değilseniz üye olun.

  • deneme.rar

Soru: as3 dinamic class import

adres MotionCoder profilini göster
Mehmet KARACA 03.08.2008 19:09:01
En iyi cevap mı ?

merhaba

layout.fla dosyası içinde hiçbirsey yok sadece document Class olarak layout.as tanımlanmıs okadar

abc class ‘ını layout a dahil etmek istiyorum bunun için libraryden iliskilendirmem gerekirmi kafam karıstı ice

Soru: as3 dinamic class import

adres MotionCoder profilini göster
Mehmet KARACA 03.08.2008 19:58:57
En iyi cevap mı ?

yarını beklemesek :S

dediklerizi anladım verdiginiz link de bir örnek download ettim getDefinitionByName kullan mak için library deki MovieClip’e kullanacakları class ı linkage den baglamıslar

ancak benim durumum birazdaha farklı olabilirlik bakımından olurgibi görünüyor ama neden olmuyor anlamadım

şimdi çalışmama bir gurup class ekliyorum

import class_larim.*; 

ve class larımı bir String den faydalanarak kullanmak istiyorum

var seçilen_class:Class =  Class(getDefinitionByName("class_name"+no));

neticede class ları sayfanın basın da yükledim bunun çalısması gerek

bu mantık la MovieCliplere ulasabiliyoduk class lara neden olmasın diye düşünmüyor degilim olaması gerekmezmi böle birseyin :S

Soru: as3 dinamic class import

adres MotionCoder profilini göster
Mehmet KARACA 03.08.2008 20:40:07
En iyi cevap mı ?

söyledigin yöntemi hemen deniyim ancak çok garip birsey oldu ve flash dan da as3 den de nefret etmeye basladım

class ları ekledim layout.as dosyama

 import pages_controller.*;
    import abc;

constructor içinde bu sekilde kullandım süper çalıstı


trace( abc );
trace( e );
trace( f );
trace( g );
var __abc:MovieClip = getAsset("abc");
var __e:MovieClip = getAsset("pages_controller.e");
var __f:MovieClip = getAsset("pages_controller.f");
var __g:MovieClip = getAsset("pages_controller.g");

trace kodlarını kadırdım hata verdi :S:S:S:S trace tekrar ekledim çalıstır kaldırdım gene hata inanamıyorum güleyimmi ağlayayımmı

Delete Aso Files felan denedim nafile napcaz simdi :S:S:S

Soru: as3 dinamic class import

adres MotionCoder profilini göster
Mehmet KARACA 03.08.2008 21:02:20
En iyi cevap mı ?

o nasıl bise biraz daha açabilirmisin

Soru: as3 dinamic class import

adres MotionCoder profilini göster
Mehmet KARACA 04.08.2008 21:49:35
En iyi cevap mı ?
Faydalı cevap

Logger/Firebug çok iyi ve kullanılslıymıs. yenişeyler örenmek güzel teşekkürler.

Soru: AS3 ile PHP yi bağlamanın En kolay yolu (PHPEvent)

adres MotionCoder profilini göster
Mehmet KARACA 09.08.2008 00:35:05
En iyi cevap mı ?

merhaba

kodlara kabaca baktım php sınımıfı MovieClip den miras almıssın ? flash.events.EventDispatcher den miras alman daha iyi olurdu sanırım

olay dinleyicini php sınıfın da tutmussun bence event sınıfında olması daha iyi olurdu

eğer web uygulaması geliştiriyorsan amfphp kullanmanı öneririm.

kolaygelsin..<<

Soru: AS3 import

adres MotionCoder profilini göster
Mehmet KARACA 10.08.2008 00:03:15
En iyi cevap mı ?

evet dediginiz gibi

bir test yaptım aynı swf içinde farklı seviye ve frameler de aynı class ı defalarca import ettim degismedi

çok tesekkürler.

Soru: AS3 import

adres MotionCoder profilini göster
Mehmet KARACA 11.08.2008 00:27:54
En iyi cevap mı ?

merhaba ali

flash develop a biraz bakındım ama pek kullanmıyorum flash IDE daha hosuma gidiyor bir flash proje olusturup çalısıyorum.

import u sürekli kullanıyorum ama tam olarak çalısma seklini yeni örendim :S:S

player içinde heryerden ulasa bilecegim ve editleye bilecegim GLOBAL sınıfı sonunda olusturabildim

package config
{
    public class config
    {
        public static var data:Object = {};
       }
}

ilginiz için çok tesekkürler.

kolaygelsin..<<

Soru: 3dmax export .dae

adres MotionCoder profilini göster
Mehmet KARACA 11.08.2008 00:43:30
En iyi cevap mı ?

merhaba

arastırma yaparken bu uygulamayı gördüm ama papervision2 ye uyduramadım :S

çok tesekkürler.

kolaygelsin..<<

Soru: AS3 import

adres MotionCoder profilini göster
Mehmet KARACA 11.08.2008 12:12:18
En iyi cevap mı ?

merhaba ali

Singleton kelimesi çok isime yaradı sihirli cümle buymus çok tesekkürler.

Soru: AS3 import

adres MotionCoder profilini göster
Mehmet KARACA 11.08.2008 14:55:20
En iyi cevap mı ?

evet ordaki örnege bakmıstım daha önceden

as3 diger dillere de benziyor örnegin C# den hiç anlamam ama kodlara baktıgım da aynı mantıgı as3 e uyarlaya biliyorum sihirli cümle o bakımdan çok isime yarıyor diger diller de makale ve dataylı açıklama oldukca var

tekrar tesekkürler.

Soru: İki kodu birleştirecek biri?

adres MotionCoder profilini göster
Mehmet KARACA 11.08.2008 23:53:06
En iyi cevap mı ?

merhaba

kodları okumadım ama basitce mantıgı anlatmak için bir örnek hazırladım

var data:Array = [
                  {name:"resim1" ,url:"resim1.jpg"},
                  {name:"resim2" ,url:"resim2.jpg"},
                  {name:"resim3" ,url:"resim3.jpg"},
                  {name:"resim4" ,url:"resim4.jpg"},
                  {name:"resim5" ,url:"resim5.jpg"},
                  {name:"resim6" ,url:"resim6.jpg"},
                  {name:"resim7" ,url:"resim7.jpg"},
                  {name:"resim8" ,url:"resim8.jpg"},
                  {name:"resim9" ,url:"resim9.jpg"},
                  {name:"resim10" ,url:"resim10.jpg"},
                  {name:"resim11" ,url:"resim11.jpg"}
                  ]
var sayfadaki_birim_adeti:uint = 3;

function urun_listele( index:uint ):void{
    if( index > Math.ceil(data.length /sayfadaki_birim_adeti) ){
        index = Math.ceil(data.length /sayfadaki_birim_adeti);  
    }

    trace("\n\n\ndata dizisinden | "+index*sayfadaki_birim_adeti+"'den "+(index+3)+"'e kadar listeledim");
    var baslangic:uint = (index*sayfadaki_birim_adeti)
    for( var i:uint = baslangic; i<baslangic+sayfadaki_birim_adeti; i++ ){
        if( i < data.length){
            trace( "name: "+data[i].name+"\t\t"+"url: "+data[i].url )
        }
    }
}


trace( "toplam:"+Math.ceil(data.length /sayfadaki_birim_adeti)+"  sayfa kayıt var" )
trace( "urun_listele function una sayfa sayısını parametre olarak gönder" )

urun_listele( 2 );

birkere yaparsan hep yaparsın

kolaygelsin..<<

Soru: Geçen zaman göstergesi.

adres MotionCoder profilini göster
Mehmet KARACA 12.08.2008 13:56:42
En iyi cevap mı ?

merhaba

baslangıc tarihini çarpma işlemini kullanarak mili saniye cinsine çevir

ve suanki zamanın milisaniye bilgisinden çıkar

trace( new Date().getTime() )

bölece baslangıc tarihinden suanki zaman arasında geçen mili saniyeyi elde et

sonra milisaniye bilgini bölme işlemleri ile tarih formatına çevir.

şeklinde bir yöntem işini görecektir.

kolaygelsin..<<

Soru: Geçen zaman göstergesi.

adres MotionCoder profilini göster
Mehmet KARACA 12.08.2008 16:33:59
En iyi cevap mı ?

merhaba

sana yardımcı olacak bir örnek hazırladım dosyanın açık kaldıgı zamanı hesaplıyor saat:dakika:saniye:mili saniye şeklinde kodları düzenleyerek sonuca ulasabilirsin.

var old_date:Date = new Date();
var new_date:Date = new Date();
var fark:Date = new Date();

stage.addEventListener( MouseEvent.MOUSE_DOWN , function(){

        trace("baslangıc_zaman: "+ old_date.getHours() +":"+old_date.getMinutes()+":"+old_date.getSeconds()+":"+old_date.getMilliseconds()  )
        new_date = new Date();
        trace("simdiki_zaman: "+ new_date.getHours() +":"+new_date.getMinutes()+":"+new_date.getSeconds()+":"+new_date.getMilliseconds()  )

        fark.setMilliseconds( new_date.getMilliseconds()-old_date.getMilliseconds() );
        fark.setSeconds( new_date.getSeconds()-old_date.getSeconds() );
        fark.setMinutes( new_date.getMinutes()-old_date.getMinutes() );
        fark.setHours( new_date.getHours()-old_date.getHours() );

        trace("fark: "+ fark.getHours() +":"+fark.getMinutes()+":"+fark.getSeconds()+":"+fark.getMilliseconds()  )

        trace("\n\n")
})

stage.dispatchEvent( new Event(MouseEvent.MOUSE_DOWN) )

kolaygelsin..<<

Soru: as3 drop down menu yapımı

adres MotionCoder profilini göster
Mehmet KARACA 12.08.2008 20:32:41
En iyi cevap mı ?

nerde oldugunuzu bilmek isterseniz


var displayPath:Array = []
stage.addEventListener( MouseEvent.MOUSE_MOVE , moveHandler)
function moveHandler( e:MouseEvent):void{
    yaz( e.target )
}


function yaz( target:Object ){
    if( target != null ){
        displayPath.push( target.name );
        yaz( target.parent)
    }else{
        displayPath.pop();
        displayPath.reverse()
        txt.text = String(displayPath)
        displayPath = [];
    }
}

kolaygelsin..<<

Soru: AS3 de konulan kutulara göre değer artırmak

adres MotionCoder profilini göster
Mehmet KARACA 14.08.2008 16:07:27
En iyi cevap mı ?

merhaba

sanırım drag drop seklinde bir alısveris sepedi yapmayı düsünüyosun. asagıda oop yaklasımlı bir örnek hazırladım.

herhangi bir obje sürükleniyormu. sürükleniyor sa hangi obje srükleniyor bilmem için controll tanımladım

// drag kontrolleri
var drag_Active:Boolean = false;
var drag_olan_obje:*;

sahnedeki objeyi sürüklemek ve yukarıdaki kontrol degiskenlerine bildirmek için

// objeyi sürükelyelim ve controllere bildirelim
function objeDrag( e:MouseEvent):void{
    drag_Active = true;
    drag_olan_obje = e.target;
    e.target.startDrag();   
}
// objenin süreklenmesi bitti sürüklenme dursun ve kontrollere bildirelim
function objeDrop( e:MouseEvent = null):void{
    drag_olan_obje.stopDrag();
    drag_Active = false;    
}

// objenin Event halleri
function obje_setup_handler( target:MovieClip , detay:Object ):void{
    target.buttonMode = true;
    target.mouseEnabled = true;
    target.addEventListener( MouseEvent.MOUSE_DOWN , objeDrag );
    target.addEventListener( MouseEvent.MOUSE_UP , objeDrop );

    target.detay = detay;
}

obje_setup_handler(misket,{name:"misket",kg:1});
obje_setup_handler(tshirt,{name:"tshirt",kg:3});
obje_setup_handler(pantolon,{name:"pantolon",kg:5});</