VX 스크립트





ID만들기 스크립트가 VX자료실에 없길래 XP버전에 있는 것을 약간 수정했습니다.

기능에 별다른 이상 없는걸로 알고잇고여 ㅎㅎ (ABS 같은 복잡한 스크립트보다는 아래에 추가하는것이 좋아여 ㅎㅎ)

 

 

 

XP 스크립트를 억지로(?) VX로 변환한거라 그런지 파티원 수가 0이 되면 게임진행이 불가능합니다.

 

 

 

 

 

 

 

↓ 아래부터 스크립트

↓ 아래부터 스크립트

↓ 아래부터 스크립트

 

 

 

 

#=================================================
# ■ 아이디를 띄우기 (스프라이트 구현)
#-------------------------------------------------
#  Author: Bimilist(비밀소년)
#  Desc: 머리위에 아이디를 띄웁니다
#=================================================

class Game_Character
attr_accessor :sprite_id
end

class Sprite_Character < Sprite_Character
def create_id_sprite(text)
bitmap = Bitmap.new(160, 18)
bitmap.font.name = "휴먼매직체"
bitmap.font.size = 14
bitmap.font.color.set(0, 0, 0)
bitmap.draw_text(+1, +1, 160, 16, text, 1)
bitmap.font.color.set(255, 255, 255)
bitmap.draw_text(0, 0, 160, 16, text, 1)
@_id_sprite = Sprite.new(self.viewport)
@_id_sprite.bitmap = bitmap
@_id_sprite.ox = 80
@_id_sprite.oy = 14
@_id_sprite.x = self.x
@_id_sprite.y = self.y - self.oy / 2
@_id_sprite.z = 3000
@_id_sprite_visible = true
end

def dispose_id_sprite
@_id_sprite.dispose
@_id_sprite_visible = false
end

def update_id_sprite
if @character.sprite_id != nil
if not @_id_sprite_visible
create_id_sprite(@character.sprite_id)
end
@_id_sprite.x = self.x
@_id_sprite.y = self.y - self.oy
else
if @_id_sprite_visible
dispose_id_sprite
end
end
end

def update
super
update_id_sprite
end
end


#=================================================
# ■ 아이디를 띄우기 (사용 방법 정의)
#-------------------------------------------------
#  Author: Bimilist(비밀소년)
#  Desc: 머리위에 아이디를 띄웁니다
# Usage: 이벤트 아이디의 이름: [ID(아이디)]
# 주인공은 그딴거 할필요 없음
#=================================================

class Game_Event < Game_Event
def refresh
super
text = @event.name.dup
text.gsub!(/[[Ii][Dd](.+?)]/) do
@sprite_id = $1
end
end
end


class Game_Player < Game_Player
def update
if @sprite_id != $game_party.members[0].name
refresh
end
super
end
def refresh
super
@sprite_id = $game_party.members[0].name
end
end

Comment '20'
  • ?
    rpg좋쿤하 2011.11.08 17:23

    감사합니다^^

  • ?
    푸른초원 2011.11.08 22:18

    사흘전부터 찾고있던자료가 오늘뜨네 ㅋㅋ

  • profile
    꿈빛 2011.11.21 16:54

    감사합니닷 ㅎ

  • ?
    시르 2011.12.24 01:42

    감사합니다.^^

  • profile
    RPG하는사람 2012.01.03 17:57

    감사합니다

  • ?
    제복잇 2012.01.10 18:09

    감사감사!! 혹시 이름 뒤에 그림자 효과 없애는법은 없나요?

  • profile
    쉰라면블랙 2012.01.10 22:28

    좋군요 ^^ 제가 알던 다른거는 스크립트 충돌이 이러났는데, 이건 완벽하네요

  • profile
    쉰라면블랙 2012.01.10 22:28

    좋군요 ^^ 제가 알던 다른거는 스크립트 충돌이 이러났는데, 이건 완벽하네요

  • profile
    심량 2012.01.21 20:13

    오 좋네요ㅎ

    그런데 사용은 어떻게...?

  • ?
    난현이라는 2012.02.20 20:43

    오호! 강사합니다!

    제가 이런거 찾고 있었어요!

  • ?
    비밀비밀 2012.02.26 12:44

    찾던건데` 진짜 감사해요 ㅎ

  • ?
    ♥안녕 2012.04.01 13:10
    NPC 아이디는 안 뜨네요 .....

    주석으로 /이름표시 도 해보고

    [ID       ] 도 해보고...

    다 해봐도 안 뜨는데, 어떻게 해야 하죠?

  • ?
    코스모스필때 2012.07.28 13:27
    ㅋㅋㅋ 휴먼매직체 없어서 바탕체로 바꾸니 잘되네요. 좋네요.
    아이디 안뜨시는 분은 bitmap.font.name = "바탕체"<<< 여기 휴먼매직체 되어있는걸 바탕체나 있는 폰트로 바꾸세요.
  • ?
    이리엘 2012.08.01 19:40
    감사합니다.그림자 없애는 것 가능한가요?;;
  • profile
    곰장수 2012.10.10 00:13
    아아..이유는 몰라도 이 스크립트를 쓰면
    어느순간부터 계속 튕겨서 꺼져버리네요..혹시 저만 그런건가요?
  • ?
    tony 2012.10.11 14:50
    오류가 있다고 하는데요??
  • ?
    톨톨 2012.10.16 11:17
    스크립트에서 70번 줄 text.gsub!(/[[Ii][Dd](.+?)]/) do
    이 부분을 text.gsub!(/\[[Ii][Dd](.+?)\]/) do로 바꾼 후에
    이벤트 이름을[ID이름]으로 바꿔주시면 NPC처럼 이벤트 캐릭터 위에도 이름이 뜹니다.
    일단 표시는 제대로 됩니다.

    그림자가 보기 싫다면 17, 18번 줄을 주석 처리 해주시면 됩니다만, 글씨 주변에 얇은 테두리가 생기는 건 없앨 수 없는 것 같습니다.

    개인적으로 보기 편하려고 14~24번째 줄 부분에 주석을 달아놓았는데
    텍스트의 형태를 수정하고 싶은 분들이 계실 것 같아서 적습니다.

    bitmap = Bitmap.new(360, 20) #가로영역, 세로영역
    bitmap.font.name = "나눔고딕"
    bitmap.font.size = 13
    bitmap.font.color.set(0, 0, 0) #그림자 색상
    bitmap.draw_text(+1, +1, 360, 30, text, 1) #그림자(가로위치,세로위치,가로영역,세로영역)
    bitmap.font.color.set(255, 255, 255) #글씨 색상
    bitmap.draw_text(0, 0, 360, 20, text, 1) #글씨(가로위치,세로위치,가로영역,세로영역)
    @_id_sprite = Sprite.new(self.viewport)
    @_id_sprite.bitmap = bitmap
    @_id_sprite.ox = 180 #캐릭터 기준 가로위치 (가로영역의 절반 값으로 입력)
    @_id_sprite.oy = 20 #캐릭터 기준 세로위치


    이 스크립트에 조금 문제가 있는데 이름 입력 이벤트로 주인공 이름을 변경하게 되면, esc로 메뉴 진입을 한번 해야 캐릭터 머리 위의 이름이 바뀝니다.
    제가 수정 가능한 부분인진 모르겠지만 해보고 정 안 되면 질문 게시판으로 가야겠네요..ㅠㅠ

    거저 알려주긴 싫어서 좀 주절 거리자면,
    저도 초보이지만 npc이름 표시는 npc이름을 표시하는 xp스크립트를 찾아서 이 스크립트와 다른 점을 비교해서 수정한거고,
    텍스트에 관한 설명을 덧붙인 건 하나하나 값을 변경하고 테스트 하면서 나온 결과입니다.
    굉장히 심플한 스크립트인데도 저같은 초보자는 검색하고 분석하고 테스트 해보는데 2~3시간이 걸렸어요.
    투자한 시간에 비해서 결과물은 간단하지만 시간 아깝다는 생각 안 합니다.
    이런게 다 배우는 과정 일테니까요.
    아무 것도 안 하고 키보드 몇 번 두들겨서 답을 찾으려는 분들이 너무 많은거 같아서 주절거렸습니다.
    뭐든지 익히려면 근성이 필요해요.

    뭐 대단한거 수정한 것도 아니면서 생색 내는 것 처럼 보일 수도 있지만 대단한게 아니기 때문에 다른 분들도 충분히 하실 수 있는거라고 봅니다.
    여러분 근성을 키웁시다^.^
  • profile
    생비나 2012.12.31 21:34
    감사합니다~
  • ?
    ☆권지용☆ 2013.01.22 10:54
    초보라뇨~ 님이 초보면 저는..... 접어야되는겨? ㅋㅋ
    초보는 아니에요. 초보는 스크립트를 보기만 해도 어질... ㅋ
  • ?
    신유민 2015.12.13 22:01
    감사감사!! 혹시 이름 뒤에 그림자 효과 없애는법은 없나요?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 3 습작 2012.12.24 5408
130 기타 회피,명중,크리 스테이트를 작성하는 스크립트 9 카르와푸딩의아틀리에 2009.06.30 2394
129 기타 확장 에러 메시지 13 file 허걱 2009.08.17 2497
128 기타 화폐단위 구분해 주는 스크립트 38 file 허걱 2010.04.13 3652
127 기타 화면에 그림 그리는 스크립트 21 file 강진수 2010.02.27 2962
126 기타 화면 확대 스크립트 12 file 에돌이 2011.07.22 3061
125 기타 화면 해상도(640 X 480) 스크립트 6 file 쿠쿠밥솥 2012.01.10 3972
124 기타 해상도 변경 스크립트 11 카리스 2011.07.19 2723
123 기타 페이드 시간 변경 2 rukan 2009.07.01 1360
122 기타 통합 스크립트(좋은 마우스 스크립트 좋은거),KGC좋은거 새로운 거 스크립트 세이브 스크립트 좋은거!~~~~~ 14 알피지GM 2010.03.07 3829
121 기타 텍스트 파일 읽어 오는 스크립트 11 아방스 2008.03.04 2878
120 기타 태양 스크립트. 15 file 할렘 2009.02.20 4463
119 기타 타격관계도 등의 한계돌파 11 시트르산 2010.09.10 2365
118 기타 클리어 횟수 기록하기 8 file 허걱 2009.08.22 2729
117 기타 커스텀 페이지 스크립트 9 file 달표범 2009.09.07 3140
116 기타 커맨드 시스템 7 file 허걱 2009.07.21 2856
115 기타 캐릭터 소개화면 16 file 좀비사냥꾼 2009.03.29 6044
114 기타 카지노 슬롯머신 15 file 아방스가 짱 2010.02.28 3023
113 기타 책 읽기 스크립트. 19 허걱 2009.01.31 4490
112 기타 책 읽기 스크립트 44 file 히류 2010.10.05 4506
111 기타 집안의 가구를 내마음대로 데코레이션하기 15 file EuclidE 2010.09.18 4303
Board Pagination Prev 1 2 3 4 5 6 7 Next
/ 7